Skip to content

chore(deps): update github.com/suborbital/systemspec digest to 6e394c3 #842

chore(deps): update github.com/suborbital/systemspec digest to 6e394c3

chore(deps): update github.com/suborbital/systemspec digest to 6e394c3 #842

Workflow file for this run

name: ci
on:
pull_request:
push:
branches:
- main
tags:
- v*
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version-file: go.mod
cache: true
- name: golangci-lint
uses: golangci/golangci-lint-action@v3
with:
version: latest
skip-cache: true
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version-file: go.mod
cache: true
- run: go mod download
- run: make e2core/install
- run: make e2core/static
- run: make test/ci
bin:
needs: [lint, test]
runs-on: ubuntu-latest
container:
image: ghcr.io/goreleaser/goreleaser-cross:v1.20.2
steps:
- uses: actions/checkout@v3
# temporary work around for https://github.com/actions/checkout/issues/1169
- run: git config --system --add safe.directory /__w/e2core/e2core
- uses: docker/metadata-action@v4
id: docker_meta
with:
images: suborbital/e2core,ghcr.io/suborbital/e2core
tags: |
type=sha,enable=${{ !startsWith(github.ref, 'refs/tags/v') }}
type=semver,pattern={{raw}}
flavor: |
latest=auto
- uses: goreleaser/goreleaser-action@v4
with:
version: latest
install-only: true
- if: startsWith(github.ref, 'refs/tags/v')
run: goreleaser release --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
VERSION: ${{ fromJSON(steps.docker_meta.outputs.json).labels['org.opencontainers.image.version'] }}
- if: ${{ !startsWith(github.ref, 'refs/tags/v') }}
run: goreleaser release --clean --snapshot
env:
VERSION: ${{ fromJSON(steps.docker_meta.outputs.json).labels['org.opencontainers.image.version'] }}
image:
needs: [lint, test]
runs-on: ubuntu-latest
steps:
- uses: docker/setup-buildx-action@v2
- uses: docker/setup-qemu-action@v2
- uses: docker/metadata-action@v4
id: docker_meta
with:
images: suborbital/e2core,ghcr.io/suborbital/e2core
tags: |
type=sha,enable=${{ !startsWith(github.ref, 'refs/tags/v') }}
type=semver,pattern={{raw}}
flavor: |
latest=auto
- name: Build e2core image
uses: docker/build-push-action@v4
with:
cache-from: type=gha
build-args: |
VERSION=${{ fromJSON(steps.docker_meta.outputs.json).labels['org.opencontainers.image.version'] }}
load: true
push: false
tags: suborbital/e2core:dev
- run: docker run --rm suborbital/e2core:dev /usr/local/bin/e2core -v
- name: Start e2core image
run: |
docker run -d \
--name e2core-test \
-p 8080:8080 \
--health-cmd "curl --fail http://localhost:8080/health || exit 1" \
--health-interval 10s \
--health-timeout 5s \
--health-retries 5 \
--env "E2CORE_CONTROL_PLANE=api.suborbital.network" \
suborbital/e2core:dev
- uses: iFaxity/wait-on-action@v1
with:
resource: http-get://localhost:8080/health
delay: 0
httpTimeout: 1000
interval: 1000
log: true
timeout: 5000
verbose: true
- name: Log errors
if: ${{ failure() }}
run: docker logs e2core-test
- if: startsWith(github.ref, 'refs/tags/v')
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- if: startsWith(github.ref, 'refs/tags/v')
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push e2core image
if: startsWith(github.ref, 'refs/tags/v')
uses: docker/build-push-action@v4
with:
cache-from: type=gha
build-args: |
VERSION=${{ fromJSON(steps.docker_meta.outputs.json).labels['org.opencontainers.image.version'] }}
cache-to: type=gha,mode=max
platforms: linux/amd64,linux/arm64
push: true
tags: ${{ steps.docker_meta.outputs.tags }}
labels: ${{ steps.docker_meta.outputs.labels }}