Skip to content

Commit 274d0d1

Browse files
Merge branch 'main' into renovate/lock-file-maintenance-python-dependencies
2 parents 4385970 + de324cc commit 274d0d1

17 files changed

Lines changed: 785 additions & 142 deletions

File tree

.github/actions/run-test/action.yaml

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ runs:
115115
juju-channel: ${{ inputs.juju-snap-channel }}
116116
provider: microk8s
117117
channel: "${{ inputs.k8s-version }}-strict/stable"
118-
bootstrap-options: "--agent-version ${{ inputs.juju-agent-version }}"
118+
bootstrap-options: "--agent-version 3.6.19"
119119
microk8s-group: snap_microk8s
120120
microk8s-addons: "hostpath-storage rbac dns metallb:10.64.140.43-10.64.140.49"
121121

@@ -144,11 +144,31 @@ runs:
144144
# Set the versions
145145
yq -i e '.providers.k8s.channel = "${{ inputs.k8s-version }}-classic/stable"' concierge.yaml
146146
yq -i e '.juju.channel = "${{ inputs.juju-snap-channel }}"' concierge.yaml
147-
yq -i e '.juju.agent-version = "${{ inputs.juju-agent-version }}"' concierge.yaml
147+
yq -i e '.juju.agent-version = "3.6.19"' concierge.yaml
148148
149149
sudo concierge prepare --trace
150150
cd ..
151151
152+
- name: Patch juju installation
153+
shell: bash
154+
run: |
155+
sudo snap install yq
156+
CONTROLLER_NAME=$(juju controllers --format yaml | yq .current-controller)
157+
juju destroy-controller $CONTROLLER_NAME --destroy-storage --no-prompt --destroy-all-models
158+
sudo snap refresh juju --revision 33784
159+
160+
- name: Re-install controller (MicroK8s)
161+
shell: bash
162+
if: "${{ inputs.k8s-distribution == 'microk8s' }}"
163+
run: |
164+
sudo -i -u ubuntu juju bootstrap microk8s $CONTROLLER_NAME --agent-version "${{ inputs.juju-agent-version }}"
165+
166+
- name: Re-install controller (K8s)
167+
shell: bash
168+
if: "${{ inputs.k8s-distribution == 'k8s' }}"
169+
run: |
170+
sudo -u ubuntu juju bootstrap k8s $CONTROLLER_NAME --verbose --agent-version "${{ inputs.juju-agent-version }}" --model-default 'logging-config=<root>=INFO; unit=DEBUG' --bootstrap-constraints root-disk=4G
171+
152172
- id: setup-python
153173
name: Setup Python
154174
uses: actions/setup-python@v5.0.0

.github/workflows/ci-uat.yaml

Lines changed: 11 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,17 @@ jobs:
4848
juju-channel: ${{ matrix.juju.snap_channel }}
4949
provider: microk8s
5050
channel: "${{ matrix.k8s-version }}-strict/stable"
51-
bootstrap-options: "--agent-version ${{ matrix.juju.agent }}"
51+
# bootstrap-options: "--agent-version ${{ matrix.juju.agent }}"
5252
microk8s-group: snap_microk8s
5353
microk8s-addons: "hostpath-storage rbac dns metallb:10.64.140.43-10.64.140.49"
54+
- name: Patch juju installation
55+
run: |
56+
sudo snap install yq
57+
CONTROLLER_NAME=$(juju controllers --format yaml | yq .current-controller)
58+
juju destroy-controller $CONTROLLER_NAME --destroy-storage --no-prompt --destroy-all-models
59+
sudo snap refresh juju --revision 33784
60+
sudo -i -u ubuntu juju bootstrap microk8s $CONTROLLER_NAME --agent-version "${{ matrix.juju.agent }}"
61+
5462
- name: Install tox & poetry
5563
run: |
5664
pip install tox
@@ -102,46 +110,15 @@ jobs:
102110
echo "Installing terraform from snap"
103111
sudo snap install terraform --classic
104112
fi
105-
- id: cache-image
106-
name: Cache Image Locally
107-
run: |
108-
# Download image for avoiding time out
109-
IMAGE="ghcr.io/canonical/charmed-spark-kyuubi@sha256:9268d19a6eef91914e874734b320fab64908faf0f7adb8856be809bc60ecd1d0"
110-
docker pull $IMAGE
111-
docker save $IMAGE -o image.tar
112-
sudo microk8s ctr images import --base-name $IMAGE image.tar
113-
docker rmi $IMAGE
114-
rm image.tar
115113
- id: tests-integration
116114
name: Run Integration Tests
117115
timeout-minutes: 90
118116
env:
119117
AZURE_STORAGE_ACCOUNT: ${{ secrets.AZURE_STORAGE_ACCOUNT }}
120118
AZURE_STORAGE_KEY: ${{ secrets.AZURE_STORAGE_KEY }}
121119
run: |
122-
UUID=$(uuidgen)
123-
echo "Using UUID: ${UUID}"
124-
cd python
125-
# Run simple tests to make sure backend works and to clean up if needed
126-
tox run -e integration-object-storage -- --spark-version ${{ matrix.version }} --storage-backend ${{ matrix.storage-backend }} --uuid $UUID
127-
128-
# Sometimes deleting resources on the clouds may take some time
129-
sleep 60
130-
131-
# The first tests deploy the bundle
132-
tox run -e integration-bundle -- --backend ${{ matrix.backend }} --spark-version ${{ matrix.version }} --storage-backend ${{ matrix.storage-backend }} --keep-models --model test-uat --cos-model cos --uuid $UUID
133-
134-
# Next we only use --no-deploy flag
135-
136-
tox run -e integration-kyuubi -- --backend ${{ matrix.backend }} --spark-version ${{ matrix.version }} --storage-backend ${{ matrix.storage-backend }} --no-deploy --keep-models --model test-uat --cos-model cos --uuid $UUID
137-
tox run -e integration-sparkjob -- --backend ${{ matrix.backend }} --spark-version ${{ matrix.version }} --storage-backend ${{ matrix.storage-backend }} --no-deploy --keep-models --model test-uat --cos-model cos --uuid $UUID
138-
139-
# We re-run the last tests to make sure that the tests are idempotent
140-
tox run -e integration-kyuubi -- --backend ${{ matrix.backend }} --spark-version ${{ matrix.version }} --storage-backend ${{ matrix.storage-backend }} --no-deploy --keep-models --model test-uat --cos-model cos --uuid $UUID
141-
tox run -e integration-sparkjob -- --backend ${{ matrix.backend }} --spark-version ${{ matrix.version }} --storage-backend ${{ matrix.storage-backend }} --no-deploy --model test-uat --cos-model cos --uuid $UUID
142-
143-
# # Run backup / restore tests separately without --no-deploy and --keep-models
144-
# tox run -e integration-backup-restore -- --backend ${{ matrix.backend }} --spark-version ${{ matrix.version }} --storage-backend ${{ matrix.storage-backend }} --model test-uat --cos-model cos --uuid $UUID
120+
cd python/
121+
tox -e uat -- --backend ${{ matrix.backend }} --spark-version ${{ matrix.version }} --storage-backend ${{ matrix.storage-backend }}
145122
- id: collect-logs
146123
name: Collect logs if job failed
147124
shell: bash

docs/.custom_wordlist.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ https
3131
Intersphinx
3232
io
3333
ip
34+
Jira
3435
Kaggle
3536
kaggle
3637
kubeconfig
@@ -45,6 +46,7 @@ loadbalancers
4546
metastore
4647
Multipass
4748
MyST
49+
nodeSelector
4850
Open Graph
4951
otf
5052
PDF
@@ -78,6 +80,8 @@ tex
7880
texlive
7981
TOC
8082
toctree
83+
tolerations
84+
Trivy
8185
txt
8286
uncommenting
8387
URL
@@ -92,3 +96,6 @@ xindy
9296
xml
9397
yaml
9498
YouTube
99+
Ory
100+
middleware
101+
Entra

0 commit comments

Comments
 (0)