diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..837cc5c --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,13 @@ +--- +version: 2 +updates: + - package-ecosystem: gomod + directory: "/" + schedule: + interval: "daily" + open-pull-requests-limit: 10 + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "daily" + open-pull-requests-limit: 10 diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml new file mode 100644 index 0000000..2c723c2 --- /dev/null +++ b/.github/workflows/ci.yaml @@ -0,0 +1,55 @@ +name: ci + +on: + pull_request: + +jobs: + test-ko-action: + runs-on: ubuntu-latest + + steps: + - uses: actions/setup-go@fac708d6674e30b6ba41289acaab6d4b75aa0753 # v4.0.1 + with: + go-version: '1.20' + check-latest: 'true' + + - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 + + # Minimal publish + - uses: ./ + + - run: ko publish --bare ./ + if: ${{ github.event_name == 'pull_request' }} + env: + KO_DOCKER_REPO: ko.local + + - name: Install old release + uses: ./ + with: + version: v0.8.0 + + - name: Check installed version + run: ko version | grep 0.8.0 + + - name: Install from tip + uses: ./ + with: + version: tip + + - name: Check installed version (tip) + run: | + sudo rm /usr/local/bin/ko # Uninstall previous versions. + ko version + + # If KO_DOCKER_REPO is set during setup, it's set for future steps. + - name: Pre-set KO_DOCKER_REPO + uses: ./ + env: + KO_DOCKER_REPO: already-set + + - name: Check pre-set KO_DOCKER_REPO + run: | + if [[ "${KO_DOCKER_REPO}" != "already-set" ]]; then + echo "${KO_DOCKER_REPO} != already-set" + exit 1 + fi diff --git a/.github/workflows/use-action.yaml b/.github/workflows/use-action.yaml index 3a70d2d..4dd1f07 100644 --- a/.github/workflows/use-action.yaml +++ b/.github/workflows/use-action.yaml @@ -2,30 +2,39 @@ name: Use Action on: push: - branches: ['main'] + branches: + - 'main' jobs: use-action: name: Use Action + strategy: matrix: - platform: [ubuntu-latest, macos-latest] + platform: + - ubuntu-latest + - macos-latest + runs-on: ${{ matrix.platform }} steps: - - uses: actions/setup-go@v2 + - uses: actions/setup-go@fac708d6674e30b6ba41289acaab6d4b75aa0753 # v4.0.1 with: - go-version: 1.18 - - uses: actions/checkout@v2 + go-version: '1.20' + check-latest: 'true' + + - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 # Minimal publish - uses: ko-build/setup-ko@main + - run: ko publish --bare ./ - name: Install old release uses: ko-build/setup-ko@main with: version: v0.8.0 + - name: Check installed version run: ko version | grep 0.8.0 @@ -33,6 +42,7 @@ jobs: uses: ko-build/setup-ko@main with: version: tip + - name: Check installed version (tip) run: | sudo rm /usr/local/bin/ko # Uninstall previous versions. @@ -43,6 +53,7 @@ jobs: uses: ko-build/setup-ko@main env: KO_DOCKER_REPO: already-set + - name: Check pre-set KO_DOCKER_REPO run: | if [[ "${KO_DOCKER_REPO}" != "already-set" ]]; then diff --git a/README.md b/README.md index d4737d2..129407f 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ [![Build](https://github.com/ko-build/setup-ko/actions/workflows/use-action.yaml/badge.svg)](https://github.com/ko-build/setup-ko/actions/workflows/use-action.yaml) > :warning: Note: `ko` recently [moved to its own GitHub org](https://github.com/ko-build/ko/issues/791), which broke `setup-ko@v0.5` if the `ko` version wasn't specified. -> +> > To fix this, either upgrade to [`setup-ko@v0.6`](https://github.com/ko-build/setup-ko/releases/tag/v0.6) or specify `version` ## Example usage @@ -20,10 +20,10 @@ jobs: name: Publish runs-on: ubuntu-latest steps: - - uses: actions/setup-go@v2 + - uses: actions/setup-go@v4 with: go-version: '1.20.x' - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: ko-build/setup-ko@v0.6 - run: ko build @@ -47,7 +47,7 @@ You can select a version with the `version` parameter: ```yaml - uses: ko-build/setup-ko@v0.6 with: - version: v0.11.2 + version: v0.14.1 ``` To build and install `ko` from source using `go install`, specify `version: tip`. @@ -86,17 +86,18 @@ name: Publish Release YAML on: release: - types: ['created'] + types: + - 'created' jobs: publish-release-yaml: name: Publish Release YAML runs-on: ubuntu-latest steps: - - uses: actions/setup-go@v2 + - uses: actions/setup-go@v4 with: - go-version: '1.20.x' - - uses: actions/checkout@v2 + go-version: '1.20' + - uses: actions/checkout@v3 - uses: ko-build/setup-ko@v0.6 - name: Generate and upload release.yaml diff --git a/action.yml b/action.yml index ed2b1a9..dc07917 100644 --- a/action.yml +++ b/action.yml @@ -5,7 +5,7 @@ branding: color: green inputs: version: - description: 'Version of ko to install (tip, latest-release, v0.8.2, etc.)' + description: 'Version of ko to install (tip, latest-release, v0.14.1, etc.)' required: true default: 'latest-release' runs: diff --git a/go.mod b/go.mod index 945be88..49abcbc 100644 --- a/go.mod +++ b/go.mod @@ -1,3 +1,3 @@ module github.com/ko-build/setup-ko -go 1.16 +go 1.20