diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..ef9d84a --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,12 @@ +# This is a template `CODEOWNERS` file for ops charms +# This file is managed by bootstack-charms-spec and should not be modified +# within individual charm repos. https://launchpad.net/bootstack-charms-spec + +# For more information about CODEOWNER, please refer to +# https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners#example-of-a-codeowners-file + +# These owners will be the default owners for everything in the repo. Unless a +# later match takes precedence, @canonical/bootstack will be requested for +# review when someone opens a pull request. +* @canonical/soleng-reviewers + diff --git a/.github/workflows/check.yaml b/.github/workflows/check.yaml new file mode 100644 index 0000000..add6285 --- /dev/null +++ b/.github/workflows/check.yaml @@ -0,0 +1,40 @@ +name: Check workflow running linter, unit and functional tests + +on: + workflow_call: + pull_request: + types: [opened, synchronize, reopened] + branches: [master, main] + paths-ignore: + - "**.md" + - "**.rst" + +jobs: + lint-unit: + uses: canonical/bootstack-actions/.github/workflows/lint-unit.yaml@v2 + strategy: + fail-fast: false + matrix: + python-version: ["3.8", "3.10"] + with: + python-version: ${{ matrix.python-version }} + tox-version: "<4" + working-directory: ./src + + func: + uses: canonical/bootstack-actions/.github/workflows/func.yaml@v2 + needs: lint-unit + strategy: + fail-fast: false + matrix: + include: + - juju-channel: "3.1/stable" + command: "make functional" + with: + command: ${{ matrix.command }} + juju-channel: ${{ matrix.juju-channel }} + nested-containers: false + provider: "lxd" + python-version: "3.10" + timeout-minutes: 120 + tox-version: "<4" diff --git a/.github/workflows/issues_to_jira.yaml b/.github/workflows/issues_to_jira.yaml new file mode 100644 index 0000000..cc44534 --- /dev/null +++ b/.github/workflows/issues_to_jira.yaml @@ -0,0 +1,25 @@ +# This is a template `issues_to_jira.yaml` file for ops charms +# This file is managed by bootstack-charms-spec and should not be modified +# within individual charm repos. https://launchpad.net/bootstack-charms-spec + +# This workflow requires to provide JIRA webhook URL via JIRA_URL GitHub Secret. +# +# Read more: +# https://support.atlassian.com/cloud-automation/docs/jira-automation-triggers/#Automationtriggers-Incomingwebhook +# +# Original code source: +# https://github.com/beliaev-maksim/github-to-jira-automation + +name: Issues to JIRA + +on: + issues: + # available via github.event.action + types: [opened, reopened, closed] + +jobs: + update: + name: Update Issue + uses: beliaev-maksim/github-to-jira-automation/.github/workflows/issues_to_jira.yaml@master + secrets: + JIRA_URL: ${{ secrets.JIRA_URL }} diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml new file mode 100644 index 0000000..309562b --- /dev/null +++ b/.github/workflows/release.yaml @@ -0,0 +1,25 @@ +# This is a template `release.yaml` file for ops charms +# This file is managed by bootstack-charms-spec and should not be modified +# within individual charm repos. https://launchpad.net/bootstack-charms-spec + +name: Release to Edge + +on: + push: + branches: [master, main] + +concurrency: + group: release + cancel-in-progress: true + +jobs: + check: + uses: ./.github/workflows/check.yaml + + release: + needs: check + uses: canonical/bootstack-actions/.github/workflows/charm-release.yaml@v2 + secrets: inherit + with: + channel: "latest/edge" + upload-image: false diff --git a/.github/workflows/sonar.yaml b/.github/workflows/sonar.yaml new file mode 100644 index 0000000..34c8d6f --- /dev/null +++ b/.github/workflows/sonar.yaml @@ -0,0 +1,17 @@ +# This is a template `sonar.yaml` file for ops charms +# This file is managed by bootstack-charms-spec and should not be modified +# within individual charm repos. https://launchpad.net/bootstack-charms-spec + +name: SonarCloud +on: + workflow_run: + workflows: + - PR workflow running lint checkers, unit and functional tests + types: [completed] + +jobs: + sonar: + uses: canonical/bootstack-actions/.github/workflows/sonar.yaml@main + secrets: inherit + with: + workflow-name: PR workflow running lint checkers, unit and functional tests