type: charm parts: charm: build-packages: - tox - git - python3-dev - libffi-dev - libssl-dev - rustc - cargo build-environment: - CHARM_INTERFACES_DIR: /root/project/interfaces/ - CHARM_LAYERS_DIR: /root/project/layers/ - MAKEFLAGS: -j$(nproc) override-build: | apt-get install ca-certificates -y tox -e build-reactive override-stage: | echo "Copying charm to staging area: $CRAFT_STAGE" NAME=$(ls $CRAFT_PART_BUILD/build/builds) cp -r $CRAFT_PART_BUILD/build/builds/$NAME/* $CRAFT_STAGE/ override-prime: | # For some reason, the normal priming chokes on the fact that there's a # hooks directory. cp -r $CRAFT_STAGE/* . # Charmcraft looks for this specific entry point. mkdir -p src touch src/charm.py chmod +x src/charm.py bases: - build-on: - name: ubuntu channel: "22.04" architectures: [amd64] run-on: - name: ubuntu channel: "22.04" architectures: [amd64] - name: ubuntu channel: "22.10" architectures: [amd64] - build-on: - name: ubuntu channel: "22.04" architectures: [arm64] run-on: - name: ubuntu channel: "22.04" architectures: [arm64] - name: ubuntu channel: "22.10" architectures: [arm64] - build-on: - name: ubuntu channel: "22.04" architectures: [ppc64el] run-on: - name: ubuntu channel: "22.04" architectures: [ppc64el] - name: ubuntu channel: "22.10" architectures: [ppc64el] - build-on: - name: ubuntu channel: "22.04" architectures: [s390x] run-on: - name: ubuntu channel: "22.04" architectures: [s390x] - name: ubuntu channel: "22.10" architectures: [s390x]