Migrate vanillaframework.io to PS6 / Juju Charm deployment#5560
Migrate vanillaframework.io to PS6 / Juju Charm deployment#5560
Conversation
| runs-on: ubuntu-latest | ||
| # Set the environment based on the trigger: 'release' for Production, 'push' for Staging. | ||
| environment: ${{ github.event_name == 'release' && 'Production' || 'Staging' }} | ||
| outputs: | ||
| charm_name: ${{ steps.setup-vars.outputs.charm_name }} | ||
| channel: ${{ steps.setup-vars.outputs.channel }} | ||
| juju_controller_name: ${{ steps.setup-vars.outputs.juju_controller_name }} | ||
| juju_model_name: ${{ steps.setup-vars.outputs.juju_model_name }} | ||
| environment: ${{ steps.setup-vars.outputs.environment }} | ||
| steps: | ||
| - name: setup vars | ||
| id: setup-vars | ||
| run: | | ||
| echo "charm_name=${{ vars.CHARM_NAME }}" >> $GITHUB_OUTPUT | ||
| echo "channel=${{ vars.CHANNEL }}" >> $GITHUB_OUTPUT | ||
| echo "juju_controller_name=${{ vars.JUJU_CONTROLLER_NAME }}" >> $GITHUB_OUTPUT | ||
| echo "juju_model_name=${{ vars.JUJU_MODEL_NAME }}" >> $GITHUB_OUTPUT | ||
| # Set the environment variable based on the trigger. | ||
| echo "environment=${{ github.event_name == 'release' && 'Production' || 'Staging' }}" >> $GITHUB_OUTPUT | ||
|
|
||
| deploy: |
Check warning
Code scanning / CodeQL
Workflow does not contain permissions Medium
| needs: setup | ||
| name: Deploy | ||
| # https://github.com/canonical/webteam-devops | ||
| uses: canonical/webteam-devops/.github/workflows/deploy.yaml@main | ||
| with: | ||
| environment: ${{ needs.setup.outputs.environment }} | ||
| charm_name: ${{ needs.setup.outputs.charm_name }} | ||
| channel: ${{ needs.setup.outputs.channel }} | ||
| juju_controller_name: ${{ needs.setup.outputs.juju_controller_name }} | ||
| juju_model_name: ${{ needs.setup.outputs.juju_model_name }} | ||
| secrets: | ||
| VAULT_APPROLE_ROLE_ID: ${{ secrets.VAULT_APPROLE_ROLE_ID }} | ||
| VAULT_APPROLE_SECRET_ID: ${{ secrets.VAULT_APPROLE_SECRET_ID }} | ||
| # See https://canonical-charmcraft.readthedocs-hosted.com/en/stable/reference/commands/login/ to create a Charmhub token | ||
| # Use `charmcraft login --export path/to/save-token-file` to create the token file. | ||
| # Then, base64-encode it: `cat path/to/save-token-file | base64` | ||
| CHARMHUB_TOKEN: ${{ secrets.CHARMHUB_TOKEN }} |
Check warning
Code scanning / CodeQL
Workflow does not contain permissions Medium
…natory comments to the prime files
* Add charm config / local dev docs * rm extra line * charm readme refinements * note about using the PAAS charm
* Add charm config / local dev docs * rm extra line * charm readme refinements * pack & upload charm in CIK * Use webteam devops workflow * tweak comments. partially for correctness, partially to force a rebuild with the updated juju controller names * add comments * note about build * test one-job workflow * remove temporarily skipped check-charm-changes job * Revert "test one-job workflow" This reverts commit 3afb9d8. * use the devops workflow
|
Production is not currently using PS6 due to some ongoing environment stability issues, but I'm merging this now as this PR will likely not need any changes when PS6 becomes more stable. It will also serve as a reference for charming other DS sites. This will have the following results in the short term: |
Done
This is a large item of work, and it is split into three feature PRs that should be merged into this branch before the feature branch is merged to main.
Fixes #5551
Fixes WD-23029
QA