...

Text file src/edge-infra.dev/test/fixtures/warehouse/layout/blobs/sha256/ee9b03e19f58adbbb6e556e2ef715c738ca25025fa7bc5e60e2472d659842ffb

Documentation: edge-infra.dev/test/fixtures/warehouse/layout/blobs/sha256

     1apiVersion: v1
     2kind: Namespace
     3metadata:
     4  name: sds
     5  labels:
     6    workload.edge.ncr.com: platform
     7    platform.edge.ncr.com/component: nodeagent
     8  annotations:
     9    pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
    10    pallet.edge.ncr.com/name: nodeagent
    11    pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
    12    pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
    13    pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
    14    pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
    15---
    16apiVersion: apiextensions.k8s.io/v1
    17kind: CustomResourceDefinition
    18metadata:
    19  name: ienodes.dsds.edge.ncr.com
    20  labels:
    21    platform.edge.ncr.com/component: nodeagent
    22  annotations:
    23    controller-gen.kubebuilder.io/version: (unknown)
    24    pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
    25    pallet.edge.ncr.com/name: nodeagent
    26    pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
    27    pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
    28    pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
    29    pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
    30spec:
    31  group: dsds.edge.ncr.com
    32  names:
    33    kind: IENode
    34    listKind: IENodeList
    35    plural: ienodes
    36    shortNames:
    37    - ien
    38    - iens
    39    singular: ienode
    40  scope: Cluster
    41  versions:
    42  - name: v1
    43    additionalPrinterColumns:
    44    - name: Cluster Edge Id
    45      type: string
    46      priority: 1
    47      jsonPath: .spec.clusterEdgeId
    48    - name: Role
    49      type: string
    50      jsonPath: .spec.role
    51    - name: Class
    52      type: string
    53      jsonPath: .spec.class
    54    - name: Lane
    55      type: string
    56      jsonPath: .spec.lane
    57    - name: Ready
    58      type: string
    59      jsonPath: .status.conditions[?(@.type=="Ready")].status
    60    - name: Age
    61      type: date
    62      jsonPath: .metadata.creationTimestamp
    63    - name: State
    64      type: string
    65      jsonPath: .status.conditions[?(@.type=="Ready")].reason
    66    - name: Message
    67      type: string
    68      jsonPath: .status.conditions[?(@.type=="Ready")].message
    69    schema:
    70      openAPIV3Schema:
    71        type: object
    72        properties:
    73          apiVersion:
    74            type: string
    75            description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    76          kind:
    77            type: string
    78            description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    79          metadata:
    80            type: object
    81          spec:
    82            type: object
    83            properties:
    84              class:
    85                type: string
    86                enum:
    87                - server
    88                - touchpoint
    89              clusterEdgeID:
    90                type: string
    91              lane:
    92                type: string
    93              network:
    94                type: array
    95                items:
    96                  type: object
    97                  properties:
    98                    addresses:
    99                      type: array
   100                      items:
   101                        type: string
   102                    dhcp4:
   103                      type: boolean
   104                    dhcp6:
   105                      type: boolean
   106                    gateway4:
   107                      type: string
   108                    gateway6:
   109                      type: string
   110                    macaddress:
   111                      type: string
   112                  required:
   113                  - dhcp4
   114                  - dhcp6
   115              networkServices:
   116                type: object
   117                properties:
   118                  dnsServers:
   119                    type: array
   120                    items:
   121                      type: string
   122                  kubeVip:
   123                    type: string
   124                  ntpServers:
   125                    type: array
   126                    items:
   127                      type: string
   128              role:
   129                type: string
   130                enum:
   131                - worker
   132                - controlplane
   133            required:
   134            - network
   135            - role
   136          status:
   137            type: object
   138            properties:
   139              conditions:
   140                type: array
   141                items:
   142                  type: object
   143                  description: "Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions.  For example, \n type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
   144                  properties:
   145                    type:
   146                      type: string
   147                      description: type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
   148                      maxLength: 316
   149                      pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
   150                    status:
   151                      type: string
   152                      description: status of the condition, one of True, False, Unknown.
   153                      enum:
   154                      - "True"
   155                      - "False"
   156                      - Unknown
   157                    lastTransitionTime:
   158                      type: string
   159                      description: lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed.  If that is not known, then using the time when the API field changed is acceptable.
   160                      format: date-time
   161                    message:
   162                      type: string
   163                      description: message is a human readable message indicating details about the transition. This may be an empty string.
   164                      maxLength: 32768
   165                    observedGeneration:
   166                      type: integer
   167                      description: observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
   168                      format: int64
   169                      minimum: 0
   170                    reason:
   171                      type: string
   172                      description: reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
   173                      maxLength: 1024
   174                      minLength: 1
   175                      pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
   176                  required:
   177                  - lastTransitionTime
   178                  - message
   179                  - reason
   180                  - status
   181                  - type
   182              inventory:
   183                type: object
   184                description: ResourceInventory contains a list of Kubernetes resource object references that have been applied.
   185                properties:
   186                  entries:
   187                    type: array
   188                    description: Entries of Kubernetes resource object references.
   189                    items:
   190                      type: object
   191                      description: ResourceRef contains the information necessary to locate a resource within a cluster.
   192                      properties:
   193                        id:
   194                          type: string
   195                          description: ID is the string representation of the Kubernetes resource object's metadata, in the format '<namespace>_<name>_<group>_<kind>'.
   196                        v:
   197                          type: string
   198                          description: Version is the API version of the Kubernetes resource object's kind.
   199                      required:
   200                      - id
   201                      - v
   202    served: true
   203    storage: true
   204    subresources:
   205      status: {}
   206---
   207apiVersion: v1
   208kind: ServiceAccount
   209metadata:
   210  name: nodeagent
   211  namespace: sds
   212  labels:
   213    platform.edge.ncr.com/component: nodeagent
   214  annotations:
   215    pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
   216    pallet.edge.ncr.com/name: nodeagent
   217    pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
   218    pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
   219    pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
   220    pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
   221---
   222apiVersion: rbac.authorization.k8s.io/v1
   223kind: ClusterRole
   224metadata:
   225  name: nodeagent
   226  labels:
   227    platform.edge.ncr.com/component: nodeagent
   228  annotations:
   229    pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
   230    pallet.edge.ncr.com/name: nodeagent
   231    pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
   232    pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
   233    pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
   234    pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
   235rules:
   236- resources:
   237  - configmaps
   238  - secrets
   239  apiGroups:
   240  - ""
   241  verbs:
   242  - get
   243  - list
   244  - watch
   245- resources:
   246  - daemonsets
   247  apiGroups:
   248  - apps
   249  verbs:
   250  - get
   251  - list
   252  - watch
   253- resources:
   254  - ienodes
   255  apiGroups:
   256  - dsds.edge.ncr.com
   257  verbs:
   258  - get
   259  - list
   260  - watch
   261  - patch
   262  - update
   263- resources:
   264  - ienodes/status
   265  apiGroups:
   266  - dsds.edge.ncr.com
   267  verbs:
   268  - get
   269  - patch
   270  - update
   271- resources:
   272  - customresourcedefinitions
   273  apiGroups:
   274  - apiextensions.k8s.io
   275  verbs:
   276  - get
   277  - list
   278  - watch
   279- resources:
   280  - nodes
   281  apiGroups:
   282  - ""
   283  verbs:
   284  - get
   285  - list
   286  - watch
   287  - patch
   288  - update
   289---
   290apiVersion: rbac.authorization.k8s.io/v1
   291kind: ClusterRoleBinding
   292metadata:
   293  name: nodeagent
   294  labels:
   295    platform.edge.ncr.com/component: nodeagent
   296  annotations:
   297    pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
   298    pallet.edge.ncr.com/name: nodeagent
   299    pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
   300    pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
   301    pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
   302    pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
   303roleRef:
   304  name: nodeagent
   305  kind: ClusterRole
   306  apiGroup: rbac.authorization.k8s.io
   307subjects:
   308- name: nodeagent
   309  namespace: sds
   310  kind: ServiceAccount
   311---
   312apiVersion: v1
   313kind: ConfigMap
   314metadata:
   315  name: nodeagent-plugins
   316  namespace: sds
   317  labels:
   318    platform.edge.ncr.com/component: nodeagent
   319  annotations:
   320    pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
   321    pallet.edge.ncr.com/name: nodeagent
   322    pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
   323    pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
   324    pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
   325    pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
   326data:
   327  cniplugin: "true"
   328  dhclient: "true"
   329  grubstringupdater: "true"
   330  iptables: "true"
   331  netplan: "true"
   332  nodepatcher: "true"
   333  ntp: "true"
   334  osuserpasswordupdater: "true"
   335  remoteagentconfig: "true"
   336  suspendAll: "false" # Suspend all plugins (overwrites all other settings)
   337  thinclientconfig: "false"
   338  thinclientconfigmapwatcher: "false"
   339  thinclientsecretwatcher: "false"
   340---
   341apiVersion: v1
   342kind: ConfigMap
   343metadata:
   344  name: remote-agent-configuration
   345  namespace: sds
   346  labels:
   347    platform.edge.ncr.com/component: nodeagent
   348  annotations:
   349    pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
   350    pallet.edge.ncr.com/name: nodeagent
   351    pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
   352    pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
   353    pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
   354    pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
   355data:
   356  config.yaml.tpl: |
   357    provider: "{{ "{{ .Provider }}" }}"
   358
   359    subscriptions:
   360      - name: "sub.{{ "{{ .StoreID }}" }}.dsds-ea-request"
   361        bannerID: "{{ "{{ .BannerID }}" }}"
   362        storeID: "{{ "{{ .StoreID }}" }}"
   363        terminalID: "{{ "{{ .TerminalID }}" }}"
   364        CredentialsPath: "{{ "{{ .CredentialsPath }}" }}"
   365        handler:
   366          ResponseTopic: "topic.dsds-ea-response"
   367          Type: "cli"
   368  key.json: |
   369    {{ .adcKey | toString }}
   370---
   371apiVersion: apps/v1
   372kind: DaemonSet
   373metadata:
   374  name: nodeagent
   375  namespace: sds
   376  labels:
   377    platform.edge.ncr.com/component: nodeagent
   378  annotations:
   379    pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
   380    pallet.edge.ncr.com/name: nodeagent
   381    pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
   382    pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
   383    pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
   384    pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
   385spec:
   386  selector:
   387    matchLabels:
   388      platform.edge.ncr.com/component: nodeagent
   389  template:
   390    metadata:
   391      labels:
   392        platform.edge.ncr.com/component: nodeagent
   393      annotations:
   394        pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
   395        pallet.edge.ncr.com/name: nodeagent
   396        pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
   397        pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
   398        pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
   399        pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
   400    spec:
   401      serviceAccountName: nodeagent
   402      automountServiceAccountToken: true
   403      priorityClassName: system-node-critical
   404      containers:
   405      - name: nodeagent
   406        image: us-east1-docker.pkg.dev/ret-edge-pltf-infra/workloads/nodeagent@sha256:5b3f78c3acacc87ec0c372b3a52e239c6167669f94f361c85c31fc3ae3370543
   407        args: ["pluginsconfigmap", "sds/nodeagent-plugins"]
   408        env:
   409        - name: HOSTNAME
   410          valueFrom:
   411            fieldRef:
   412              fieldPath: spec.nodeName
   413        resources:
   414          limits:
   415            cpu: "100m"
   416            memory: "100Mi"
   417          requests:
   418            cpu: "50m"
   419            memory: "100Mi"
   420        imagePullPolicy: IfNotPresent
   421        envFrom:
   422        - secretRef:
   423            name: ldkey
   424        securityContext:
   425          capabilities:
   426            add:
   427            - CAP_DAC_OVERRIDE # Root permissions to read/write to files on IEN
   428            - CAP_SYS_CHROOT # Allows chroot (for use by os.exec commands)
   429            drop:
   430            - all # Drop all linux capabilities
   431          privileged: true
   432        volumeMounts:
   433        - name: root
   434          readOnly: true # Mount root system as read only
   435          mountPath: /host
   436        - name: etc-volume
   437          mountPath: /host-etc
   438        - name: grub-volume
   439          mountPath: /host-grub
   440        - name: rofs-volume
   441          readOnly: true
   442          mountPath: /host-rofs
   443        - name: gateway-cni-script
   444          readOnly: false
   445          mountPath: /opt/cni/bin/gateway
   446        - name: calico-config-list
   447          readOnly: false
   448          mountPath: /etc/cni/net.d/10-calico.conflist
   449        - name: fw-dir
   450          readOnly: false
   451          mountPath: /etc/ien-fw/ipv4/dynamic
   452        - name: xtables-lock
   453          mountPath: /run/xtables.lock
   454        - name: dhclient-scripts
   455          readOnly: false
   456          mountPath: /etc/dhcp/dhclient-exit-hooks.d/
   457        - name: bin-dir
   458          readOnly: true
   459          mountPath: /usr/local/bin
   460      imagePullSecrets:
   461      - name: edge-docker-pull-secret
   462      hostNetwork: true
   463      hostPID: true
   464      volumes:
   465      - name: bin-dir
   466        hostPath:
   467          type: Directory
   468          path: /usr/local/bin
   469      - name: calico-config-list
   470        hostPath:
   471          type: File
   472          path: /etc/cni/net.d/10-calico.conflist
   473      - name: dhclient-scripts
   474        hostPath:
   475          type: Directory
   476          path: /etc/dhcp/dhclient-exit-hooks.d/
   477      - name: etc-volume
   478        hostPath:
   479          type: Directory
   480          path: /etc
   481      - name: fw-dir
   482        hostPath:
   483          type: DirectoryOrCreate
   484          path: /etc/ien-fw/ipv4/dynamic
   485      - name: gateway-cni-script
   486        hostPath:
   487          type: FileOrCreate
   488          path: /opt/cni/bin/gateway
   489      - name: grub-volume
   490        hostPath:
   491          type: Directory
   492          path: /boot
   493      - name: rofs-volume
   494        hostPath:
   495          type: Directory
   496          path: /rofs
   497      - name: root
   498        hostPath:
   499          path: /
   500      - name: xtables-lock
   501        hostPath:
   502          type: FileOrCreate
   503          path: /run/xtables.lock
   504---
   505apiVersion: external-secrets.io/v1beta1
   506kind: ExternalSecret
   507metadata:
   508  name: ldkey
   509  namespace: sds
   510  labels:
   511    platform.edge.ncr.com/component: nodeagent
   512  annotations:
   513    pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
   514    pallet.edge.ncr.com/name: nodeagent
   515    pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
   516    pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
   517    pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
   518    pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
   519spec:
   520  data:
   521  - remoteRef:
   522      key: edge-backend-launch-darkly-sdk-key
   523    secretKey: LD_KEY
   524  refreshInterval: 1m
   525  secretStoreRef:
   526    name: gcp-provider
   527    kind: ClusterSecretStore
   528  target:
   529    name: ldkey
   530    creationPolicy: Owner
   531---
   532apiVersion: external-secrets.io/v1beta1
   533kind: ExternalSecret
   534metadata:
   535  name: remote-agent-configuration
   536  namespace: sds
   537  labels:
   538    platform.edge.ncr.com/component: nodeagent
   539  annotations:
   540    pallet.edge.ncr.com/created: "2023-02-16T21:26:39Z"
   541    pallet.edge.ncr.com/name: nodeagent
   542    pallet.edge.ncr.com/revision: 696897a3df910b6e84a88c9336907a17b18159c1
   543    pallet.edge.ncr.com/source: https://github.com/ncrvoyix-swt-retail/edge-infra/tree/696897a3df910b6e84a88c9336907a17b18159c1
   544    pallet.edge.ncr.com/team: '@ncrvoyix-swt-retail/sds'
   545    pallet.edge.ncr.com/version: 7.7.7-rc.1676582799+commit.696897a
   546spec:
   547  data:
   548  - remoteRef:
   549      key: remotecli-${cluster_uuid}-gcp-api-key
   550    secretKey: adcKey
   551  refreshInterval: 1h
   552  secretStoreRef:
   553    name: gcp-provider
   554    kind: ClusterSecretStore
   555  target:
   556    template:
   557      engineVersion: v2
   558      templateFrom:
   559      - configMap:
   560          name: remote-agent-configuration
   561          items:
   562          - key: key.json
   563          - key: config.yaml.tpl
   564    creationPolicy: Owner

View as plain text