diff --git a/repo/packages/developer-portal.packages.kadras.io/0.4.1.yml b/repo/packages/developer-portal.packages.kadras.io/0.4.1.yml new file mode 100644 index 0000000..69a9585 --- /dev/null +++ b/repo/packages/developer-portal.packages.kadras.io/0.4.1.yml @@ -0,0 +1,607 @@ +apiVersion: data.packaging.carvel.dev/v1alpha1 +kind: Package +metadata: + creationTimestamp: null + name: developer-portal.packages.kadras.io.0.4.1 +spec: + refName: developer-portal.packages.kadras.io + releasedAt: "2024-11-10T20:15:35Z" + template: + spec: + deploy: + - kapp: + intoNs: backstage + fetch: + - imgpkgBundle: + image: ghcr.io/kadras-io/package-for-developer-portal@sha256:3ce0698652631108e01dbba342008c17d29b66d0fcc1de02a67fd2d8142f8551 + template: + - helmTemplate: + name: backstage + namespace: backstage + path: config/helm/upstream/backstage + valuesFrom: + - path: config/helm/values.yml + - ytt: + ignoreUnknownComments: true + paths: + - '-' + - config/carvel + - kbld: + paths: + - '-' + - .imgpkg/images.yml + valuesSchema: + openAPIv3: + properties: + backstage: + description: Backstage parameters @default -- See below + properties: + affinity: + default: {} + description: 'Affinity for pod assignment
Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity' + type: object + annotations: + default: {} + description: Additional custom annotations for the `Deployment` resource + type: object + appConfig: + default: {} + description: 'Allows to define the appConfig as a multiline string that + generates a ConfigMap automatically, not requiring to have it pre + provisioned as with the extraAppConfig key. DO NOT USE if you need + to put sensitive data in the appConfig. E.g: appConfig: app: baseUrl: + https://somedomain.tld -- Generates ConfigMap and configures it in + the Backstage pods' + type: object + args: + default: [] + description: Backstage container command arguments + items: {} + type: array + command: + default: [] + description: Backstage container command + items: + default: node + type: string + type: array + containerPorts: + description: Container ports on the Deployment + properties: + backend: + default: 7007 + type: integer + type: object + containerSecurityContext: + default: {} + description: 'Security settings for a Container.
Ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container' + type: object + extraAppConfig: + default: [] + description: Extra app configuration files to inline into command arguments + items: {} + type: array + extraContainers: + default: [] + description: Deployment sidecars + items: {} + type: array + extraEnvVars: + default: [] + description: Backstage container environment variables + items: {} + type: array + extraEnvVarsCM: + default: [] + description: Backstage container environment variables from existing + ConfigMaps + items: {} + type: array + extraEnvVarsSecrets: + default: [] + description: Backstage container environment variables from existing + Secrets + items: {} + type: array + extraVolumeMounts: + default: [] + description: Backstage container additional volume mounts + items: {} + type: array + extraVolumes: + default: [] + description: Backstage container additional volumes + items: {} + type: array + image: + properties: + digest: + default: "" + description: Backstage image digest (digest takes precedence over + image tag) + type: string + pullPolicy: + default: Always + description: 'Specify a imagePullPolicy. Defaults to ''Always'' + if image tag is ''latest'', else set to ''IfNotPresent''
+ Ref: https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy' + type: string + pullSecrets: + default: [] + description: 'Optionally specify an array of imagePullSecrets. Secrets + must be manually created in the namespace.
Ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ +
E.g: `pullSecrets: [myRegistryKeySecretName]`' + items: {} + type: array + registry: + default: ghcr.io + description: Backstage image registry + type: string + repository: + default: backstage/backstage + description: Backstage image repository + type: string + tag: + default: latest + description: Backstage image tag (immutable tags are recommended) + type: string + type: object + initContainers: + default: [] + description: Backstage container init containers + items: {} + type: array + installDir: + default: /app + description: Directory containing the backstage installation + type: string + livenessProbe: + description: 'Liveness Probe Ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes + ' + type: object + revisionHistoryLimit: + default: 10 + description: Define the [count of deployment revisions](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#clean-up-policy) + to be kept. May be set to 0 in case of GitOps deployment approach. + type: integer + startupProbe: + description: 'Startup Probe Ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes + ' + items: {} + type: array + extraTls: + default: [] + description: 'The TLS configuration for additional hostnames to be covered + with this ingress record.
Ref: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls + ' + items: {} + type: array + host: + default: "" + description: 'Hostname to be used to expose the route to access the + backstage application (e.g: backstage.IP.nip.io)' + type: string + path: + default: / + description: 'Path to be used to expose the full route to access the + backstage application (e.g: IP.nip.io/backstage)' + type: string + tls: + description: Ingress TLS parameters + properties: + enabled: + default: false + description: Enable TLS configuration for the host defined at `ingress.host` + parameter + type: boolean + secretName: + default: "" + description: The name to which the TLS Secret will be called + type: string + type: object + type: object + kubeVersion: + default: "" + description: |- + Common parameters + -- Override Kubernetes version + type: string + metrics: + description: Metrics configuration + properties: + serviceMonitor: + description: ServiceMonitor configuration
Allows configuring + your backstage instance as a scrape target for [Prometheus](https://github.com/prometheus/prometheus) + using a ServiceMonitor custom resource that [Prometheus Operator](https://github.com/prometheus-operator/prometheus-operator) + can understand. + properties: + annotations: + default: {} + description: ServiceMonitor annotations + type: object + enabled: + default: false + description: If enabled, a ServiceMonitor resource for Prometheus + Operator is created
Prometheus Operator must be installed + in your cluster prior to enabling. + type: boolean + interval: + default: "null" + description: ServiceMonitor scrape interval + type: "null" + labels: + default: {} + description: Additional ServiceMonitor labels + type: object + path: + default: /metrics + description: ServiceMonitor endpoint path
Note that the /metrics + endpoint is NOT present in a freshly scaffolded Backstage app. + To setup, follow the [Prometheus metrics tutorial](https://github.com/backstage/backstage/blob/master/contrib/docs/tutorials/prometheus-metrics.md). + type: string + type: object + type: object + nameOverride: + default: "" + description: String to partially override common.names.fullname + type: string + networkPolicy: + description: '@section NetworkPolicy parameters' + properties: + egressRules: + description: Egress Rules + properties: + customRules: + default: [] + description: Additional custom egress rules + items: {} + type: array + denyConnectionsToExternal: + default: false + description: Deny external connections. Should not be enabled when + working with an external database. + type: boolean + type: object + enabled: + default: false + description: Specifies whether a NetworkPolicy should be created + type: boolean + ingressRules: + description: Ingress Rules + properties: + customRules: + default: [] + description: Additional custom ingress rules + items: {} + type: array + namespaceSelector: + default: {} + description: Namespace selector label allowed to access the Backstage + instance + type: object + podSelector: + default: {} + description: Pod selector label allowed to access the Backstage + instance + type: object + type: object + type: object + postgresql: + description: PostgreSQL [chart configuration](https://github.com/bitnami/charts/blob/master/bitnami/postgresql/values.yaml) + @default -- See below + properties: + architecture: + default: standalone + description: PostgreSQL architecture (`standalone` or `replication`) + type: string + auth: + description: The authentication details of the Postgres database + properties: + existingSecret: + default: "" + description: Name of existing secret to use for PostgreSQL credentials + type: string + password: + default: "" + description: Password for the custom user to create + type: string + secretKeys: + description: The secret keys Postgres will look for to retrieve + the relevant password + properties: + adminPasswordKey: + default: admin-password + description: The key in which Postgres will look for, for the + admin password, in the existing Secret + type: string + replicationPasswordKey: + default: replication-password + description: The key in which Postgres will look for, for the + replication password, in the existing Secret + type: string + userPasswordKey: + default: user-password + description: The key in which Postgres will look for, for the + user password, in the existing Secret + type: string + type: object + username: + default: bn_backstage + description: Name for a custom user to create + type: string + type: object + enabled: + default: false + description: Switch to enable or disable the PostgreSQL helm chart + type: boolean + type: object + service: + description: |- + @section Traffic Exposure parameters + Service parameters -- Service parameters @default -- See below + properties: + annotations: + default: {} + description: Additional custom annotations for Backstage service + type: object + clusterIP: + default: "" + description: 'Backstage service Cluster IP
E.g `clusterIP: None`' + type: string + externalTrafficPolicy: + default: Cluster + description: 'Backstage service external traffic policy Ref: https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip' + type: string + extraPorts: + default: [] + description: Extra ports to expose in the Backstage service (normally + used with the `sidecar` value) + items: {} + type: array + loadBalancerIP: + default: "" + description: 'Backstage service Load Balancer IP
Ref: https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer' + type: string + loadBalancerSourceRanges: + default: [] + description: 'Load Balancer sources
Ref: https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer +
E.g `loadBalancerSourceRanges: [10.10.10.0/24]`' + items: {} + type: array + nodePorts: + description: Node port for the Backstage client connections Choose port + between `30000-32767` + properties: + backend: + default: "" + type: string + type: object + ports: + description: Backstage svc port for client connections + properties: + backend: + default: 7007 + type: integer + name: + default: http-backend + description: Backstage svc port name + type: string + targetPort: + default: backend + description: Backstage svc target port referencing receiving pod + container port + type: string + type: object + sessionAffinity: + default: None + description: 'Control where client requests go, to the same pod or round-robin + (values: `ClientIP` or `None`)
Ref: https://kubernetes.io/docs/concepts/services-networking/service/#session-stickiness' + type: string + type: + default: ClusterIP + description: Kubernetes Service type + type: string + type: object + serviceAccount: + description: Service Account Configuration @default -- See below + properties: + annotations: + default: {} + description: Additional custom annotations for the ServiceAccount. + type: object + automountServiceAccountToken: + default: true + description: Auto-mount the service account token in the pod + type: boolean + create: + default: false + description: Enable the creation of a ServiceAccount for Backstage pods + type: boolean + labels: + default: {} + description: Additional custom labels to the service ServiceAccount. + type: object + name: + default: "" + description: Name of the ServiceAccount to use If not set and `serviceAccount.create` + is true, a name is generated + type: string + type: object + type: object + version: 0.4.1