Skip to content

Commit bdf4bae

Browse files
committed
Add dev workflow
1 parent 4970e11 commit bdf4bae

5 files changed

Lines changed: 36 additions & 6 deletions

File tree

.github/workflows/fc-kernels.yml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@ name: FC Kernels
22

33
on:
44
push:
5-
branches:
6-
- main
75

86
permissions:
97
id-token: write
@@ -25,10 +23,19 @@ jobs:
2523
- name: Build kernels
2624
run: sudo make build
2725

26+
- name: Set bucket based on branch
27+
id: set-bucket
28+
run: |
29+
if [ "${{ github.ref_name }}" = "main" ]; then
30+
echo "DESTINATION=${{ secrets.GCP_BUCKET_NAME }}/kernels" >> $GITHUB_OUTPUT
31+
else
32+
echo "DESTINATION=${{ secrets.GCP_DEV_BUCKET_NAME }}/${{ github.ref_name }}" >> $GITHUB_OUTPUT
33+
fi
34+
2835
- name: Upload kernels
2936
uses: "google-github-actions/upload-cloud-storage@v1"
3037
with:
3138
path: "./builds"
32-
destination: ${{ secrets.GCP_BUCKET_NAME }}/kernels
39+
destination: ${{ steps.set-bucket.outputs.DESTINATION }}/kernels
3340
gzip: false
3441
parent: false

terraform/.env.template

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
GCP_PROJECT_ID=
22
PREFIX=
3-
TERRAFORM_STATE_BUCKET=
3+
TERRAFORM_STATE_BUCKET=
4+
GCP_REGION=

terraform/Makefile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22

33
tf_vars := TF_VAR_gcp_project_id=$(GCP_PROJECT_ID) \
44
TF_VAR_prefix=$(PREFIX) \
5-
TF_VAR_terraform_state_bucket=$(TERRAFORM_STATE_BUCKET)
5+
TF_VAR_terraform_state_bucket=$(TERRAFORM_STATE_BUCKET) \
6+
TF_VAR_gcp_region=$(GCP_REGION) \
67

78

89
.PHONY: init

terraform/main.tf

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,18 @@ resource "google_service_account" "fc_kernels" {
6262
display_name = "Service account for ${var.github_repository} FC Kernels"
6363
}
6464

65-
resource "google_storage_bucket_iam_member" "fc_template_bucket_iam" {
65+
resource "google_storage_bucket_iam_member" "fc_kernels_bucket_iam" {
66+
bucket = var.gcs_bucket_name
67+
role = "roles/storage.objectUser"
68+
member = "serviceAccount:${google_service_account.fc_kernels.email}"
69+
}
70+
71+
resource "google_storage_bucket" "development_bucket" {
72+
location = var.gcp_region
73+
name = "${var.gcp_project_id}-fc-kernels-development"
74+
}
75+
76+
resource "google_storage_bucket_iam_member" "fc_kernels_development_bucket_iam" {
6677
bucket = var.gcs_bucket_name
6778
role = "roles/storage.objectUser"
6879
member = "serviceAccount:${google_service_account.fc_kernels.email}"
@@ -104,3 +115,9 @@ resource "github_actions_secret" "gcs_bucket_name" {
104115
plaintext_value = var.gcs_bucket_name
105116
}
106117

118+
resource "github_actions_secret" "gcs_dev_bucket_name" {
119+
repository = var.github_repository
120+
secret_name = "GCP_DEV_BUCKET_NAME"
121+
plaintext_value = google_storage_bucket.development_bucket.name
122+
}
123+

terraform/variables.tf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@ variable "github_repository" {
88
default = "fc-kernels"
99
}
1010

11+
variable "gcp_region" {
12+
type = string
13+
}
14+
1115
variable "gcp_project_id" {
1216
description = "The project to deploy the cluster in"
1317
type = string

0 commit comments

Comments
 (0)