Skip to content

Commit 2ccfaff

Browse files
author
Andrew Suderman
authored
Get signing secret from vault and sign checksums (#222)
1 parent 6392b76 commit 2ccfaff

File tree

2 files changed

+55
-11
lines changed

2 files changed

+55
-11
lines changed

.circleci/config.yml

+43-11
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
version: 2.1
22

33
orbs:
4-
rok8s-scripts: fairwinds/rok8s-scripts@11
4+
rok8s: fairwinds/rok8s-scripts@11
55

66
executors:
77
golang-exec:
@@ -22,7 +22,15 @@ references:
2222
only: /.*/
2323
tags:
2424
ignore: /.*/
25-
25+
install_vault_alpine: &install_vault_alpine
26+
run:
27+
name: install hashicorp vault
28+
command: |
29+
apk --update add curl yq
30+
cd /tmp
31+
curl -LO https://releases.hashicorp.com/vault/1.9.3/vault_1.9.3_linux_amd64.zip
32+
unzip vault_1.9.3_linux_amd64.zip
33+
mv vault /usr/bin/vault
2634
jobs:
2735
test:
2836
working_directory: /go/src/github.com/fairwindsops/rbac-lookup
@@ -37,19 +45,26 @@ jobs:
3745
snapshot:
3846
working_directory: /go/src/github.com/fairwindsops/rbac-lookup
3947
docker:
40-
- image: goreleaser/goreleaser:v1.1.0
48+
- image: goreleaser/goreleaser:v1.3.0
4149
steps:
4250
- checkout
43-
- run: goreleaser --snapshot
51+
- setup_remote_docker
52+
- run: goreleaser --snapshot --skip-sign
4453
- store_artifacts:
4554
path: dist
4655
destination: snapshot
4756
release:
4857
working_directory: /go/src/github.com/fairwindsops/rbac-lookup
4958
docker:
50-
- image: goreleaser/goreleaser:v1.1.0
59+
- image: goreleaser/goreleaser:v1.3.0
5160
steps:
5261
- checkout
62+
- setup_remote_docker
63+
- *install_vault_alpine
64+
- rok8s/get_vault_env:
65+
vault_path: repo/global/env
66+
- rok8s/get_vault_env:
67+
vault_path: repo/rbac-lookup/env
5368
- run: go mod download && go mod verify
5469
- run: goreleaser
5570
publish_docs:
@@ -66,17 +81,34 @@ jobs:
6681
npm run check-links
6782
npm run build
6883
- run:
69-
name: Install AWS CLI
84+
name: Install Tools
7085
command: |
86+
cd /tmp
87+
echo "Installing AWS CLI"
7188
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
7289
unzip awscliv2.zip
7390
sudo ./aws/install
91+
92+
echo "Installing Hashicorp Vault"
93+
curl -LO https://releases.hashicorp.com/vault/1.9.3/vault_1.9.3_linux_amd64.zip
94+
unzip vault_1.9.3_linux_amd64.zip
95+
sudo mv vault /usr/bin/vault
96+
sudo chmod +x /usr/bin/vault
97+
vault --version
98+
99+
echo "Installing yq"
100+
curl -LO https://github.com/mikefarah/yq/releases/download/v4.16.2/yq_linux_amd64.tar.gz
101+
tar -zxvf yq_linux_amd64.tar.gz
102+
sudo mv yq_linux_amd64 /usr/bin/yq
103+
sudo chmod +x /usr/bin/yq
104+
yq --version
105+
- rok8s/get_vault_env:
106+
vault_path: repo/rbac-lookup/env
74107
- run:
75108
name: Publish Docs Site to S3
76109
command: |
77110
cd ./dist
78111
aws s3 sync ./ s3://rbac-lookup.docs.fairwinds.com --delete
79-
80112
workflows:
81113
version: 2
82114
test-and-release:
@@ -93,19 +125,19 @@ workflows:
93125
only: /.*/
94126
tags:
95127
ignore: /.*/
96-
- rok8s-scripts/kubernetes_e2e_tests:
128+
- rok8s/kubernetes_e2e_tests:
97129
name: "End-To-End Kubernetes 1.19"
98130
kind_node_image: "kindest/node:v1.19.11@sha256:07db187ae84b4b7de440a73886f008cf903fcf5764ba8106a9fd5243d6f32729"
99131
<<: *e2e_config
100-
- rok8s-scripts/kubernetes_e2e_tests:
132+
- rok8s/kubernetes_e2e_tests:
101133
name: "End-To-End Kubernetes 1.20"
102134
kind_node_image: "kindest/node:v1.20.7@sha256:cbeaf907fc78ac97ce7b625e4bf0de16e3ea725daf6b04f930bd14c67c671ff9"
103135
<<: *e2e_config
104-
- rok8s-scripts/kubernetes_e2e_tests:
136+
- rok8s/kubernetes_e2e_tests:
105137
name: "End-To-End Kubernetes 1.21"
106138
kind_node_image: "kindest/node:v1.21.1@sha256:69860bda5563ac81e3c0057d654b5253219618a22ec3a346306239bba8cfa1a6"
107139
<<: *e2e_config
108-
- rok8s-scripts/kubernetes_e2e_tests:
140+
- rok8s/kubernetes_e2e_tests:
109141
name: "End-To-End Kubernetes 1.22"
110142
kind_node_image: "kindest/node:v1.22.0@sha256:b8bda84bb3a190e6e028b1760d277454a72267a5454b57db34437c34a588d047"
111143
<<: *e2e_config

.goreleaser.yml

+12
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,18 @@ changelog:
2929
exclude:
3030
- '^docs:'
3131
- '^test:'
32+
release:
33+
prerelease: auto
34+
footer: |
35+
You can verify the signature of the checksums.txt file using [cosign](https://github.com/sigstore/cosign).
36+
37+
```
38+
cosign verify-blob checksums.txt --signature=checksums.txt.sig --key https://artifacts.fairwinds.com/cosign.pub
39+
```
40+
signs:
41+
- cmd: cosign
42+
args: ["sign-blob", "--key=hashivault://cosign", "-output-signature=${signature}", "${artifact}"]
43+
artifacts: checksum
3244
brews:
3345
- name: rbac-lookup
3446
tap:

0 commit comments

Comments
 (0)