fleet/.github/workflows/goreleaser-orbit.yaml
Guillaume Ross 62d3b9145f
4620 pin action dependencies (#4622)
* Update build-binaries.yaml

Pin action versions + add read only token to build-binaries.yaml

* Update codeql-analysis.yml

Pin dependencies with hash for codeql-analysis.yml

* Update deploy-fleet-website.yml

Pin dependencies in deploy-fleet-website.yml

* Update docs.yml

Pin dependencies for docs.yml

* Update fleet-and-orbit.yml

Pinning dependencies for fleet-and-orbit.yml

* Update generate-osqueryd-app-tar-gz.yml

Pin dependencies for generate-osqueryd-app-tar-gz.yml

* Pin dependencies in goreleaser workflows

Pinned dependencies in the 3 goreleaser workflows

* Update integration.yml

Pinned dependencies with hash

* Update pr-helm.yaml

Pinned dependencies with hash

* Update push-osquery-perf-to-ecr.yml

Pinned dependencies with a hash

* Update release-helm.yaml

Pinned one dependency with a hash

* Update semgrep-analysis.yml

Pinned dependencies with hashes

* Update test-go.yaml

Pinned dependencies with hash

* Update test-packaging.yml

Pinned dependencies with hashes

* Update test-website.yml

Pinned dependencies with hashes

* Update test.yml

Pinned dependencies with hashes
2022-03-16 15:42:28 -04:00

52 lines
2.0 KiB
YAML

name: GoReleaser Orbit
on:
push:
tags:
- 'orbit-*'
permissions:
contents: write
jobs:
goreleaser:
runs-on: macos-latest
environment: Docker Hub
steps:
- name: Checkout
uses: actions/checkout@629c2de402a417ea7690ca6ce3f33229e27606a5 # v2
# Note that goreleaser does not like the orbit- prefixed flag unless you use the closed-source
# paid version. We pay for goreleaser, but using the closed source build would weaken our
# supply-chain integrity goals, so we hack around it by replacing the tag.
- name: Replace tag
run: git tag $(echo ${{ github.ref_name }} | sed -e 's/orbit-//g')
- name: Import signing keys
env:
APPLE_APPLICATION_CERTIFICATE: ${{ secrets.APPLE_APPLICATION_CERTIFICATE }}
APPLE_APPLICATION_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_APPLICATION_CERTIFICATE_PASSWORD }}
KEYCHAIN_PASSWORD: ${{ secrets.KEYCHAIN_PASSWORD }}
run: |
echo "$APPLE_APPLICATION_CERTIFICATE" | base64 --decode > certificate.p12
security create-keychain -p $KEYCHAIN_PASSWORD build.keychain
security default-keychain -s build.keychain
security unlock-keychain -p $KEYCHAIN_PASSWORD build.keychain
security import certificate.p12 -k build.keychain -P $APPLE_APPLICATION_CERTIFICATE_PASSWORD -T /usr/bin/codesign
security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k $KEYCHAIN_PASSWORD build.keychain
security find-identity -vv
rm certificate.p12
- name: Set up Go
uses: actions/setup-go@bfdd3570ce990073878bf10f6b2d79082de49492 # v2
with:
go-version: 1.17.8
- name: Run GoReleaser
run: go run github.com/goreleaser/goreleaser release --rm-dist -f orbit/.goreleaser.yml
env:
AC_USERNAME: ${{ secrets.APPLE_USERNAME }}
AC_PASSWORD: ${{ secrets.APPLE_PASSWORD }}
CODESIGN_IDENTITY: 51049B247B25B3119FAE7E9C0CC4375A43E47237
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}