mirror of
https://github.com/1Password/onepassword-operator.git
synced 2025-10-23 07:58:04 +00:00
Compare commits
4 Commits
v1.0.0
...
goreleaser
Author | SHA1 | Date | |
---|---|---|---|
![]() |
8ee4478c46 | ||
![]() |
2e47b76d4c | ||
![]() |
1cca09df90 | ||
![]() |
b9cb92eb1b |
11
.github/workflows/build.yml
vendored
11
.github/workflows/build.yml
vendored
@@ -1,20 +1,11 @@
|
|||||||
name: Build and Test
|
name: Build and Test
|
||||||
|
on: [push, pull_request]
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- '**'
|
|
||||||
pull_request:
|
|
||||||
branches:
|
|
||||||
- $default-branch
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
|
||||||
build:
|
build:
|
||||||
name: Build
|
name: Build
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
|
|
||||||
- name: Set up Go 1.x
|
- name: Set up Go 1.x
|
||||||
uses: actions/setup-go@v2
|
uses: actions/setup-go@v2
|
||||||
with:
|
with:
|
||||||
|
29
.github/workflows/release.yml
vendored
Normal file
29
.github/workflows/release.yml
vendored
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
name: goreleaser
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags:
|
||||||
|
- '*'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
goreleaser:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
-
|
||||||
|
name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
-
|
||||||
|
name: Set up Go
|
||||||
|
uses: actions/setup-go@v2
|
||||||
|
with:
|
||||||
|
go-version: 1.15
|
||||||
|
-
|
||||||
|
name: Run GoReleaser
|
||||||
|
uses: goreleaser/goreleaser-action@v2
|
||||||
|
with:
|
||||||
|
version: latest
|
||||||
|
args: release --rm-dist
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
55
.goreleaser.yml
Normal file
55
.goreleaser.yml
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
project_name: onepassword-operator
|
||||||
|
builds:
|
||||||
|
- env:
|
||||||
|
- CGO_ENABLED=0
|
||||||
|
binary: manager
|
||||||
|
main: ./cmd/manager/main.go
|
||||||
|
flags:
|
||||||
|
- -mod=vendor
|
||||||
|
- -trimpath
|
||||||
|
ldflags:
|
||||||
|
- -s -w -X "github.com/1Password/onepassword-operator/version.Version={{ .Version }}"
|
||||||
|
mod_timestamp: '{{ .CommitTimestamp }}'
|
||||||
|
goos:
|
||||||
|
- linux
|
||||||
|
goarch:
|
||||||
|
- amd64
|
||||||
|
- arm64
|
||||||
|
dockers:
|
||||||
|
- image_templates: ["1password/{{ .ProjectName }}:{{ .Version }}-amd64"]
|
||||||
|
goos: linux
|
||||||
|
goarch: amd64
|
||||||
|
dockerfile: Dockerfile-goreleaser
|
||||||
|
use_buildx: true
|
||||||
|
extra_files:
|
||||||
|
- deploy/connect/
|
||||||
|
build_flag_templates:
|
||||||
|
- --platform=linux/amd64
|
||||||
|
- --label=org.opencontainers.image.title={{ .ProjectName }}
|
||||||
|
- --label=org.opencontainers.image.description={{ .ProjectName }}
|
||||||
|
- --label=org.opencontainers.image.url=https://github.com/1Password/onepassword-operator
|
||||||
|
- --label=org.opencontainers.image.source=https://github.com/1Password/onepassword-operator
|
||||||
|
- --label=org.opencontainers.image.version={{ .Version }}
|
||||||
|
- --label=org.opencontainers.image.revision={{ .FullCommit }}
|
||||||
|
- --label=org.opencontainers.image.licenses=MIT
|
||||||
|
- image_templates: ["1password/{{ .ProjectName }}:{{ .Version }}-arm64v8"]
|
||||||
|
goos: linux
|
||||||
|
goarch: arm64
|
||||||
|
dockerfile: Dockerfile-goreleaser
|
||||||
|
use_buildx: true
|
||||||
|
extra_files:
|
||||||
|
- deploy/connect/
|
||||||
|
build_flag_templates:
|
||||||
|
- --platform=linux/arm64/v8
|
||||||
|
- --label=org.opencontainers.image.title={{ .ProjectName }}
|
||||||
|
- --label=org.opencontainers.image.description={{ .ProjectName }}
|
||||||
|
- --label=org.opencontainers.image.url=https://github.com/1Password/onepassword-operator
|
||||||
|
- --label=org.opencontainers.image.source=https://github.com/1Password/onepassword-operator
|
||||||
|
- --label=org.opencontainers.image.version={{ .Version }}
|
||||||
|
- --label=org.opencontainers.image.revision={{ .FullCommit }}
|
||||||
|
- --label=org.opencontainers.image.licenses=MIT
|
||||||
|
docker_manifests:
|
||||||
|
- name_template: 1password/{{ .ProjectName }}:{{ .Version }}
|
||||||
|
image_templates:
|
||||||
|
- 1password/{{ .ProjectName }}:{{ .Version }}-amd64
|
||||||
|
- 1password/{{ .ProjectName }}:{{ .Version }}-arm64v8
|
9
Dockerfile-goreleaser
Normal file
9
Dockerfile-goreleaser
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
# Use distroless as minimal base image to package the manager binary
|
||||||
|
# Refer to https://github.com/GoogleContainerTools/distroless for more details
|
||||||
|
FROM gcr.io/distroless/static:nonroot
|
||||||
|
WORKDIR /
|
||||||
|
COPY ./manager .
|
||||||
|
USER nonroot:nonroot
|
||||||
|
COPY deploy/connect/ deploy/connect/
|
||||||
|
|
||||||
|
ENTRYPOINT ["/manager"]
|
Reference in New Issue
Block a user