mirror of
https://github.com/bunkerity/bunkerweb
synced 2026-05-24 09:28:37 +00:00
ci/cd - move k8s login in staging-tests job
This commit is contained in:
parent
4450762b8c
commit
b5638aae19
5 changed files with 42 additions and 36 deletions
2
.github/workflows/staging-create-infra.yml
vendored
2
.github/workflows/staging-create-infra.yml
vendored
|
|
@ -45,8 +45,6 @@ jobs:
|
|||
- run: ./tests/create.sh ${{ inputs.TYPE }}
|
||||
env:
|
||||
CICD_SECRETS: ${{ secrets.CICD_SECRETS }}
|
||||
REG_USER: ${{ github.actor }}
|
||||
REG_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
K8S_IP: ${{ secrets.K8S_IP }}
|
||||
- run: |
|
||||
tar -cf terraform.tar /tmp/${{ inputs.TYPE }}
|
||||
|
|
|
|||
10
.github/workflows/staging-tests.yml
vendored
10
.github/workflows/staging-tests.yml
vendored
|
|
@ -53,8 +53,18 @@ jobs:
|
|||
openssl enc -d -in /tmp/terraform.tar.enc -aes-256-cbc -pbkdf2 -iter 100000 -md sha256 -pass file:/tmp/.secret_key -out /tmp/terraform.tar
|
||||
rm -f /tmp/.secret_key
|
||||
tar xf /tmp/terraform.tar -C /
|
||||
mkdir /tmp/reg
|
||||
cp tests/terraform/k8s.tf /tmp/reg
|
||||
cp tests/terraform/providers.tf /tmp/reg
|
||||
cd /tmp/reg
|
||||
export TF_VAR_k8s_reg_user=${REG_USER}
|
||||
export TF_VAR_k8s_reg_token=${REG_TOKEN}
|
||||
terraform init
|
||||
terraform apply -auto-approve
|
||||
env:
|
||||
SECRET_KEY: ${{ secrets.SECRET_KEY }}
|
||||
REG_USER: ${{ github.actor }}
|
||||
REG_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
if: inputs.TYPE == 'k8s'
|
||||
- uses: azure/setup-kubectl@v3
|
||||
if: inputs.TYPE == 'k8s'
|
||||
|
|
|
|||
|
|
@ -2,8 +2,6 @@
|
|||
|
||||
# drop and export secrets
|
||||
echo "${CICD_SECRETS}" > /opt/.env
|
||||
echo "export TF_VAR_k8s_reg_user=${REG_USER}" >> /opt/.env
|
||||
echo "export TF_VAR_k8s_reg_token=${REG_TOKEN}" >> /opt/.env
|
||||
echo "export TF_VAR_k8s_ip=${K8S_IP}" >> /opt/.env
|
||||
chmod +x /opt/.env
|
||||
. /opt/.env
|
||||
|
|
|
|||
32
tests/terraform/k8s-reg.tf
Normal file
32
tests/terraform/k8s-reg.tf
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
variable "k8s_reg_user" {
|
||||
type = string
|
||||
nullable = false
|
||||
sensitive = true
|
||||
}
|
||||
variable "k8s_reg_token" {
|
||||
type = string
|
||||
nullable = false
|
||||
sensitive = true
|
||||
}
|
||||
|
||||
# Setup registry
|
||||
provider "kubernetes" {
|
||||
config_path = "/tmp/k8s/kubeconfig"
|
||||
}
|
||||
resource "kubernetes_secret" "reg" {
|
||||
metadata {
|
||||
name = "secret-registry"
|
||||
}
|
||||
type = "kubernetes.io/dockerconfigjson"
|
||||
data = {
|
||||
".dockerconfigjson" = jsonencode({
|
||||
auths = {
|
||||
"ghcr.io" = {
|
||||
"username" = var.k8s_reg_user
|
||||
"password" = var.k8s_reg_token
|
||||
"auth" = base64encode("${var.k8s_reg_user}:${var.k8s_reg_token}")
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
|
@ -4,16 +4,6 @@ variable "k8s_ip" {
|
|||
nullable = false
|
||||
sensitive = true
|
||||
}
|
||||
variable "k8s_reg_user" {
|
||||
type = string
|
||||
nullable = false
|
||||
sensitive = true
|
||||
}
|
||||
variable "k8s_reg_token" {
|
||||
type = string
|
||||
nullable = false
|
||||
sensitive = true
|
||||
}
|
||||
|
||||
# Create k8s cluster
|
||||
resource "scaleway_k8s_cluster" "cluster" {
|
||||
|
|
@ -53,26 +43,4 @@ resource "local_sensitive_file" "lb_yml" {
|
|||
resource "kubectl_manifest" "lb" {
|
||||
depends_on = [local_sensitive_file.lb_yml]
|
||||
yaml_body = local_sensitive_file.lb_yml.content
|
||||
}
|
||||
|
||||
# Setup registry
|
||||
provider "kubernetes" {
|
||||
config_path = "${local_sensitive_file.kubeconfig.filename}"
|
||||
}
|
||||
resource "kubernetes_secret" "reg" {
|
||||
metadata {
|
||||
name = "secret-registry"
|
||||
}
|
||||
type = "kubernetes.io/dockerconfigjson"
|
||||
data = {
|
||||
".dockerconfigjson" = jsonencode({
|
||||
auths = {
|
||||
"ghcr.io" = {
|
||||
"username" = var.k8s_reg_user
|
||||
"password" = var.k8s_reg_token
|
||||
"auth" = base64encode("${var.k8s_reg_user}:${var.k8s_reg_token}")
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
Loading…
Reference in a new issue