Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,6 @@
# CLI utilities and operators, tagged understackctl/vX.Y.Z and friends
- changed-files:
- all-globs-to-all-files: ["go/understackctl/**"]
- changed-files:
- all-globs-to-all-files: ["go/nautobotop/**"]
- changed-files:
- all-globs-to-all-files: ["go/dexop/**"]
- changed-files:
Expand Down
94 changes: 0 additions & 94 deletions .github/workflows/build-nautobotop.yaml

This file was deleted.

5 changes: 5 additions & 0 deletions .github/workflows/containers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ on:
- "containers/ironic-nautobot-client/**"
- "containers/ironic-vnc-container/**"
- "containers/openstack-sync-operator/**"
- "go/nautobotop/**"
- "containers/understack-tests/**"
- "python/**"
- ".github/workflows/containers.yaml"
Expand Down Expand Up @@ -47,6 +48,10 @@ jobs:
target: prod
- name: nautobot
target: prod
- name: nautobotop
target: ''
dockerfile_path: ./go/nautobotop/Dockerfile
context_path: "./go/nautobotop/"
uses: ./.github/workflows/build-container-reuse.yaml
secrets: inherit
with:
Expand Down
9 changes: 6 additions & 3 deletions RELEASING.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,12 @@ them. Pushing the tag triggers `containers.yaml` and `containers-openstack.yaml`
to publish container images, and `release-notes.yaml` to assemble the release
notes and create the GitHub release.

Per-artifact tags (`understackctl/vX.Y.Z`, `nautobotop-vX.Y.Z`,
`kubectl-us/vX.Y.Z`, `ironic-hardware-exporter/vX.Y.Z`, `dexop-vX.Y.Z`,
`ironic-ipxe/vX.Y.Z`) are released independently. See
`nautobotop` is released with the repository-wide tag: its image is built by
`containers.yaml` and its Helm chart is deployed straight from
`charts/nautobotop/` at `understack_ref`, like `openstack-sync-operator`.

Per-artifact tags (`understackctl/vX.Y.Z`, `kubectl-us/vX.Y.Z`,
`ironic-hardware-exporter/vX.Y.Z`, `dexop-vX.Y.Z`, `ironic-ipxe/vX.Y.Z`) are released independently. See
[Separately released artifacts](#separately-released-artifacts) below.

## Writing a release note
Expand Down
16 changes: 13 additions & 3 deletions charts/argocd-understack/templates/application-nautobotop.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,24 @@ spec:
server: {{ $.Values.cluster_server }}
project: understack
sources:
- chart: nautobotop
- path: charts/nautobotop
ref: understack
repoURL: {{ include "understack.understack_url" $ }}
targetRevision: {{ include "understack.understack_ref" $ }}
helm:
ignoreMissingValueFiles: true
releaseName: nautobotop
valueFiles:
- $understack/charts/nautobotop/values.yaml
- $deploy/{{ include "understack.deploy_path" $ }}/nautobotop/values.yaml
repoURL: ghcr.io/rackerlabs/charts
targetRevision: {{ $.Values.global.nautobotop.chartVersion }}
{{- $ref := include "understack.understack_ref" $ }}
{{- if regexMatch "^v[0-9]+\\.[0-9]+\\.[0-9]+$" $ref }}
# Run the image built from the same release tag as the chart. Any other
# ref (HEAD, main, a branch) has no matching tag, so the chart uses latest.
parameters:
- name: understackRef
value: {{ $ref | quote }}
{{- end }}
- path: {{ include "understack.deploy_path" $ }}/nautobotop
ref: deploy
repoURL: {{ include "understack.deploy_url" $ }}
Expand Down
3 changes: 0 additions & 3 deletions charts/argocd-understack/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -165,9 +165,6 @@ global:
# -- Enable/disable deploying Nautobot Operator
# @default -- false
enabled: false
# -- Chart version for Nautobot Operator
# @default -- 0.0.3
chartVersion: 0.0.3

# -- OpenEBS
openebs:
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,6 @@ type: application
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: 0.0.18

maintainers:
- name: rackerlabs
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ spec:
securityContext:
{{- toYaml . | nindent 12 }}
{{- end }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Values.understackRef | default "latest" }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,14 @@ image:
repository: ghcr.io/rackerlabs/understack/nautobotop
# This sets the pull policy for images.
pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion.
# Pins the image tag. When empty, understackRef is used, then "latest".
tag: ""

# Set by the ArgoCD Application to the understack_ref when it is a release tag
# (vX.Y.Z), so the image follows the UnderStack release the chart came from.
# Ignored when image.tag is set.
understackRef: ""

# This is for the secrets for pulling an image from a private repository more information can be found here: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
imagePullSecrets: []
# This is to override the chart name.
Expand Down
3 changes: 2 additions & 1 deletion docs/deploy-guide/components/nautobotop.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
charts:
- nautobotop
- charts/nautobotop
deploy_overrides:
helm:
mode: values
Expand All @@ -16,6 +16,7 @@ Global Nautobot operator deployment driven from the deploy repo.

- Cluster scope: global
- Values key: `global.nautobotop`
- Helm chart: `charts/nautobotop/`
- ArgoCD Application template: `charts/argocd-understack/templates/application-nautobotop.yaml`

## How ArgoCD Builds It
Expand Down
7 changes: 5 additions & 2 deletions docs/operator-guide/nautobotop.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,8 @@ flowchart
### Installation

```bash
helm install nautobotop oci://ghcr.io/rackerlabs/charts/nautobotop:0.0.1 -n nautobotop --create-namespace
helm install nautobotop charts/nautobotop -n nautobotop --create-namespace \
--set image.tag=<tag>
```

### Basic Configuration
Expand Down Expand Up @@ -750,7 +751,9 @@ During a sync the operator will create or update objects in Nautobot and remove

## UnderStack Integration

The nautobotop component is defined at `apps/global/nautobotop.yaml` and deployed through ArgoCD.
The nautobotop component is defined by `charts/argocd-understack/templates/application-nautobotop.yaml`
and deployed through ArgoCD. The chart lives in `charts/nautobotop/` and is released with the
repository-wide `vX.Y.Z` tag; the image follows `understack_ref` when it is a release tag and is `latest` otherwise. Pin it in `$DEPLOY_NAME/nautobotop/values.yaml` with `image.tag`.

You can customize the deployment per environment:

Expand Down
5 changes: 0 additions & 5 deletions go/nautobotop/.goreleaser.Dockerfile

This file was deleted.

95 changes: 0 additions & 95 deletions go/nautobotop/.goreleaser.yaml

This file was deleted.

6 changes: 3 additions & 3 deletions go/nautobotop/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -365,7 +365,7 @@ catalog-push: ## Push a catalog image.
$(MAKE) docker-push IMG=$(CATALOG_IMG)

.PHONY: copy-crds-to-helm
copy-crds-to-helm: ## Copy generated CRDs into Helm chart
copy-crds-to-helm: ## Copy generated CRDs into the charts/nautobotop Helm chart
@echo "Copying CRDs to Helm chart..."
mkdir -p helm/crds
cat config/crd/bases/sync.rax.io_nautobots.yaml > helm/crds/clients.yaml
mkdir -p ../../charts/nautobotop/crds
cat config/crd/bases/sync.rax.io_nautobots.yaml > ../../charts/nautobotop/crds/clients.yaml
Loading