diff --git a/.github/dependabot.yml b/.github/dependabot.yml index bfbfd1e..92ecc78 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -3,6 +3,8 @@ updates: - assignees: - andrewcole directory: / + labels: + - automerge open-pull-requests-limit: 10 package-ecosystem: docker schedule: @@ -10,6 +12,8 @@ updates: - assignees: - andrewcole directory: / + labels: + - automerge open-pull-requests-limit: 10 package-ecosystem: github-actions schedule: @@ -17,6 +21,8 @@ updates: - assignees: - andrewcole directory: / + labels: + - automerge open-pull-requests-limit: 10 package-ecosystem: pip schedule: diff --git a/.github/workflows/auto-create-pull-request.yaml b/.github/workflows/auto-create-pull-request.yaml new file mode 100644 index 0000000..e007aea --- /dev/null +++ b/.github/workflows/auto-create-pull-request.yaml @@ -0,0 +1,28 @@ +--- +jobs: + pull-request: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: "0" + - env: + DRY_RUN: true + GITHUB_TOKEN: ${{ secrets.PAT }} + WITH_V: true + id: version + name: Bump version and push tag + uses: anothrNick/github-tag-action@1.67.0 + - name: pull-request + uses: diillson/auto-pull-request@v1.0.1 + with: + destination_branch: master + github_token: ${{ secrets.PAT }} + pr_assignee: andrewcole + pr_label: release + pr_title: Release ${{ steps.version.outputs.new_tag }} +name: Automatically Create Pull Request +on: + push: + branches: + - development diff --git a/.github/workflows/auto-merge-pull-request.yaml b/.github/workflows/auto-merge-pull-request.yaml new file mode 100644 index 0000000..9aadf0d --- /dev/null +++ b/.github/workflows/auto-merge-pull-request.yaml @@ -0,0 +1,31 @@ +--- +jobs: + automerge: + if: contains(github.event.pull_request.labels.*.name, 'automerge') + runs-on: ubuntu-latest + steps: + - id: automerge + name: Auto Merge + uses: alexwilson/enable-github-automerge-action@main + with: + github-token: ${{ secrets.PAT }} + merge-method: MERGE +name: Automatically Merge Pull Requests +on: + check_suite: + types: + - completed + pull_request: + types: + - labeled + - unlabeled + - synchronize + - opened + - edited + - ready_for_review + - reopened + - unlocked + pull_request_review: + types: + - submitted + status: {} diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml new file mode 100644 index 0000000..928eb63 --- /dev/null +++ b/.github/workflows/lint.yaml @@ -0,0 +1,43 @@ +--- +jobs: + lint-actions: # https://github.com/reviewdog/action-actionlint + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: reviewdog/action-actionlint@v1 + with: + fail_on_error: "true" + filter_mode: nofilter + - uses: reviewdog/action-suggester@v1 + lint-dockerfile: # https://github.com/reviewdog/action-hadolint + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: reviewdog/action-hadolint@v1 + with: + fail_on_error: "true" + filter_mode: nofilter + - uses: reviewdog/action-suggester@v1 + lint-spelling: # https://github.com/reviewdog/action-misspell + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: reviewdog/action-misspell@v1 + with: + exclude: | + */*.min.css + */*.svg + fail_on_error: "true" + filter_mode: nofilter + - uses: reviewdog/action-suggester@v1 + lint-yaml: # https://github.com/reviewdog/action-yamllint + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: reviewdog/action-yamllint@v1 + with: + fail_on_error: "true" + filter_mode: nofilter + - uses: reviewdog/action-suggester@v1 +name: Lint +on: pull_request diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index d0bb585..c5e3933 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -7,8 +7,7 @@ jobs: with: fetch-depth: "0" - env: - DEFAULT_BUMP: patch - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GITHUB_TOKEN: ${{ secrets.PAT }} WITH_V: true id: version name: Bump version and push tag @@ -27,7 +26,7 @@ jobs: - name: Login to GitHub Container Registry uses: docker/login-action@v3 with: - password: ${{ secrets.GITHUB_TOKEN }} + password: ${{ secrets.PAT }} registry: ghcr.io username: ${{ github.repository_owner }} - name: Build and push @@ -42,7 +41,7 @@ jobs: tags: ${{ steps.meta.outputs.tags }} - env: GITHUB_REPOSITORY: ${{ github.repository }} - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GITHUB_TOKEN: ${{ secrets.PAT }} name: Release uses: softprops/action-gh-release@v1 with: diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index a299a90..d3ee892 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -1,44 +1,5 @@ --- jobs: - lint-actions: # https://github.com/reviewdog/action-actionlint - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: reviewdog/action-actionlint@v1 - with: - fail_on_error: "true" - filter_mode: nofilter - - uses: reviewdog/action-suggester@v1 - lint-dockerfile: # https://github.com/reviewdog/action-hadolint - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: reviewdog/action-hadolint@v1 - with: - fail_on_error: "true" - filter_mode: nofilter - - uses: reviewdog/action-suggester@v1 - lint-spelling: # https://github.com/reviewdog/action-misspell - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: reviewdog/action-misspell@v1 - with: - exclude: | - */*.min.css - */*.svg - fail_on_error: "true" - filter_mode: nofilter - - uses: reviewdog/action-suggester@v1 - lint-yaml: # https://github.com/reviewdog/action-yamllint - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: reviewdog/action-yamllint@v1 - with: - fail_on_error: "true" - filter_mode: nofilter - - uses: reviewdog/action-suggester@v1 test: runs-on: ubuntu-latest steps: @@ -57,5 +18,9 @@ jobs: context: . platforms: linux/amd64,linux/arm64 push: false -name: Test -on: pull_request +name: Test Development Build +on: + pull_request: + branches: + - development + - master diff --git a/LICENSE b/LICENSE index da8d76d..4e2771b 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2022 Andrew Cole +Copyright (c) 2024 Andrew Cole. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal