Skip to content

Commit de3ed49

Browse files
authored
Merge pull request #1 from e2b-dev/dev
Add dev workflow
2 parents 4970e11 + d3ba9f6 commit de3ed49

5 files changed

Lines changed: 50 additions & 10 deletions

File tree

.github/workflows/fc-kernels.yml

Lines changed: 12 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,21 @@ 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=${{ vars.GCP_BUCKET_NAME }}/kernels" >> $GITHUB_OUTPUT
31+
else
32+
echo "DESTINATION=${{ vars.GCP_DEV_BUCKET_NAME }}/${{ github.ref_name }}" >> $GITHUB_OUTPUT
33+
echo "You can copy the built kernels by running the following command in your infra repo:"
34+
echo "gsutil cp -r builds gs://${{ vars.GCP_DEV_BUCKET_NAME }}/${{ github.ref_name }}/* gs://$(GCP_PROJECT_ID)-fc-kernels/"
35+
fi
36+
2837
- name: Upload kernels
2938
uses: "google-github-actions/upload-cloud-storage@v1"
3039
with:
3140
path: "./builds"
32-
destination: ${{ secrets.GCP_BUCKET_NAME }}/kernels
41+
destination: ${{ steps.set-bucket.outputs.DESTINATION }}/kernels
3342
gzip: false
3443
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: 30 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -62,12 +62,32 @@ 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" {
6666
bucket = var.gcs_bucket_name
6767
role = "roles/storage.objectUser"
6868
member = "serviceAccount:${google_service_account.fc_kernels.email}"
6969
}
7070

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_binding" "org_read_access" {
77+
bucket = google_storage_bucket.development_bucket.name
78+
role = "roles/storage.objectViewer"
79+
80+
members = [
81+
"domain:e2b.dev"
82+
]
83+
}
84+
85+
resource "google_storage_bucket_iam_member" "fc_kernels_development_bucket_iam" {
86+
bucket = google_storage_bucket.development_bucket.name
87+
role = "roles/storage.objectUser"
88+
member = "serviceAccount:${google_service_account.fc_kernels.email}"
89+
}
90+
7191
resource "google_service_account_iam_member" "gha_service_account_wif_tokencreator_iam_member" {
7292
service_account_id = google_service_account.fc_kernels.name
7393
role = "roles/iam.workloadIdentityUser"
@@ -97,10 +117,15 @@ resource "github_actions_secret" "service_account_email_secret" {
97117
plaintext_value = google_service_account.fc_kernels.email
98118
}
99119

120+
resource "github_actions_variable" "gcs_bucket_name" {
121+
repository = var.github_repository
122+
value = var.gcs_bucket_name
123+
variable_name = "GCP_BUCKET_NAME"
124+
}
100125

101-
resource "github_actions_secret" "gcs_bucket_name" {
102-
repository = var.github_repository
103-
secret_name = "GCP_BUCKET_NAME"
104-
plaintext_value = var.gcs_bucket_name
126+
resource "github_actions_variable" "gcs_dev_bucket_name" {
127+
repository = var.github_repository
128+
variable_name = "GCP_DEV_BUCKET_NAME"
129+
value = google_storage_bucket.development_bucket.name
105130
}
106131

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)