From 3c0139304238eacd6498560857eed2205f1a389a Mon Sep 17 00:00:00 2001 From: sed-i <82407168+sed-i@users.noreply.github.com> Date: Fri, 15 Sep 2023 13:18:36 -0400 Subject: [PATCH 1/3] Split bases --- .github/workflows/release-edge.yaml | 4 +-- .gitignore | 2 ++ charmcraft.yaml => k8s_charmcraft.yaml | 3 --- machine_charmcraft.yaml | 34 ++++++++++++++++++++++++++ tox.ini | 2 ++ 5 files changed, 40 insertions(+), 5 deletions(-) rename charmcraft.yaml => k8s_charmcraft.yaml (86%) create mode 100644 machine_charmcraft.yaml diff --git a/.github/workflows/release-edge.yaml b/.github/workflows/release-edge.yaml index 99ca21fa..696d6dbf 100644 --- a/.github/workflows/release-edge.yaml +++ b/.github/workflows/release-edge.yaml @@ -8,7 +8,7 @@ on: jobs: render: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - name: Checkout Code uses: actions/checkout@v3 @@ -21,7 +21,7 @@ jobs: - name: Render k8s Charm run: tox -e render-k8s - name: Pack Artifact - run: sudo apt-get update && sudo apt-get install tar && tar czvf artifact.tar.gz metadata.yaml src/charm.py + run: sudo apt-get update && sudo apt-get install tar && tar czvf artifact.tar.gz charmcraft.yaml metadata.yaml src/charm.py - name: Upload Artifact uses: actions/upload-artifact@v3 with: diff --git a/.gitignore b/.gitignore index 4f6a8f84..4762f311 100644 --- a/.gitignore +++ b/.gitignore @@ -1,12 +1,14 @@ venv/ build/ *.charm +*.orig .coverage __pycache__/ *.py[cod] .tox .idea/ tests/integration/*-tester/lib/ +charmcraft.yaml metadata.yaml src/charm.py .env diff --git a/charmcraft.yaml b/k8s_charmcraft.yaml similarity index 86% rename from charmcraft.yaml rename to k8s_charmcraft.yaml index c7a23388..e5e07201 100644 --- a/charmcraft.yaml +++ b/k8s_charmcraft.yaml @@ -11,9 +11,6 @@ bases: - name: "ubuntu" channel: "22.04" architectures: ["amd64"] - - name: "ubuntu" - channel: "20.04" - architectures: ["amd64"] parts: charm: build-packages: diff --git a/machine_charmcraft.yaml b/machine_charmcraft.yaml new file mode 100644 index 00000000..10b83e54 --- /dev/null +++ b/machine_charmcraft.yaml @@ -0,0 +1,34 @@ +# Copyright 2021 Canonical Ltd. +# See LICENSE file for licensing details. + +type: charm +bases: + - build-on: + - name: "ubuntu" + channel: "20.04" + architectures: ["amd64"] + run-on: + - name: "ubuntu" + channel: "20.04" + architectures: ["amd64"] + - build-on: + - name: "ubuntu" + channel: "22.04" + architectures: ["amd64"] + run-on: + - name: "ubuntu" + channel: "22.04" + architectures: ["amd64"] +parts: + charm: + build-packages: + - git + + # The following are needed for tls-certificates-interface + - build-essential + - python3-dev + - libffi-dev + - libssl-dev + - pkg-config + - rustc + - cargo diff --git a/tox.ini b/tox.ini index c0b5e89d..9a795fc2 100644 --- a/tox.ini +++ b/tox.ini @@ -44,6 +44,7 @@ allowlist_externals = cp commands = cp {toxinidir}/src/k8s_charm.py {toxinidir}/src/charm.py cp {toxinidir}/k8s_metadata.yaml {toxinidir}/metadata.yaml + cp {toxinidir}/k8s_charmcraft.yaml {toxinidir}/charmcraft.yaml [testenv:render-machine] skip_install=True @@ -55,6 +56,7 @@ commands = cp {toxinidir}/src/machine_charm.py {toxinidir}/src/charm.py chmod +x {toxinidir}/src/charm.py cp {toxinidir}/machine_metadata.yaml {toxinidir}/metadata.yaml + cp {toxinidir}/machine_charmcraft.yaml {toxinidir}/charmcraft.yaml [testenv:lint] skip_install=True From 1cc343eff93002f1e4462eed907ace5ee8fec2fd Mon Sep 17 00:00:00 2001 From: sed-i <82407168+sed-i@users.noreply.github.com> Date: Fri, 15 Sep 2023 13:24:18 -0400 Subject: [PATCH 2/3] Drop unnecessary change --- .github/workflows/release-edge.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release-edge.yaml b/.github/workflows/release-edge.yaml index 696d6dbf..ee4f4f48 100644 --- a/.github/workflows/release-edge.yaml +++ b/.github/workflows/release-edge.yaml @@ -8,7 +8,7 @@ on: jobs: render: - runs-on: ubuntu-22.04 + runs-on: ubuntu-20.04 steps: - name: Checkout Code uses: actions/checkout@v3 From 5b2122c42522d6a2f521aea8866712c8d0ba62af Mon Sep 17 00:00:00 2001 From: sed-i <82407168+sed-i@users.noreply.github.com> Date: Fri, 15 Sep 2023 14:22:50 -0400 Subject: [PATCH 3/3] "Render" also for tests --- tox.ini | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tox.ini b/tox.ini index 9a795fc2..bd56c649 100644 --- a/tox.ini +++ b/tox.ini @@ -143,6 +143,7 @@ commands = # use a better solution when we actually have machine code cp {[vars]src_path}/k8s_charm.py {[vars]src_path}/charm.py cp k8s_metadata.yaml metadata.yaml + cp k8s_charmcraft.yaml charmcraft.yaml pytest -v --tb native --log-cli-level=INFO -s {posargs} {[vars]tst_path}/integration @@ -164,6 +165,7 @@ allowlist_externals = cp commands = cp {[vars]src_path}/machine_charm.py {[vars]src_path}/charm.py cp machine_metadata.yaml metadata.yaml + cp machine_charmcraft.yaml charmcraft.yaml pytest -vv --tb native --log-cli-level=INFO -s {posargs} {[vars]tst_path}/scenario/test_machine_charm --ignore {[vars]tst_path}/scenario/test_k8s [testenv:scenario-k8s]