Blog deployment
This commit is contained in:
parent
c4e68ac959
commit
93d782548e
32
.drone.yml
32
.drone.yml
@ -19,15 +19,35 @@ steps:
|
||||
- git submodule init
|
||||
- git submodule update --recursive
|
||||
- hugo --source blog
|
||||
- |-
|
||||
cat << EOF > Dockerfile
|
||||
FROM nginxinc/nginx-unprivileged
|
||||
COPY blog/public /usr/share/nginx/html
|
||||
EOF
|
||||
- name: push-built-image
|
||||
image: plugins/docker
|
||||
settings:
|
||||
debug: true
|
||||
repo: rassigma.avril:5000/scubbo/blog_nginx
|
||||
tags: built_in_ci
|
||||
insecure: true
|
||||
- name: update_blog_deployment
|
||||
# I've tried using https://github.com/sinlead/drone-kubectl and
|
||||
# https://github.com/honestbee/drone-kubernetes, but neither is built for arm64
|
||||
image: busybox
|
||||
# Replicating the commands from
|
||||
# https://github.com/sinlead/drone-kubectl/blob/master/init-kubectl
|
||||
commands:
|
||||
# https://github.com/bitnami/bitnami-docker-kubectl/issues/22 -
|
||||
# there's no bitnami/kubectl image for arm64
|
||||
- wget https://storage.googleapis.com/kubernetes-release/release/v1.19.2/bin/linux/arm64/kubectl
|
||||
- chmod +x kubectl
|
||||
- echo "Echoing Kubernetes Server"
|
||||
- echo $kubernetesServer
|
||||
- ./kubectl config set-credentials default --token=$kubernetesToken
|
||||
- echo $kubernetesCert | base64 -d > ca.crt
|
||||
- ./kubectl config set-cluster default --server=$kubernetesServer --certificate-authority=ca.crt
|
||||
- ./kubectl config set-context default --cluster=default --user=default
|
||||
- ./kubectl config use-context default
|
||||
- ./kubectl apply -f kubernetes-resources.yml
|
||||
environment:
|
||||
kubernetesServer:
|
||||
from_secret: k8s_server
|
||||
kubernetesCert:
|
||||
from_secret: k8s_cert
|
||||
kubernetesToken:
|
||||
from_secret: k8s_token
|
2
Dockerfile
Normal file
2
Dockerfile
Normal file
@ -0,0 +1,2 @@
|
||||
FROM nginxinc/nginx-unprivileged
|
||||
COPY blog/public /usr/share/nginx/html
|
36
kubernetes-resources.yml
Normal file
36
kubernetes-resources.yml
Normal file
@ -0,0 +1,36 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: blog-svc
|
||||
namespace: blog
|
||||
spec:
|
||||
selector:
|
||||
role: app
|
||||
ports:
|
||||
- port: 8080
|
||||
type: LoadBalancer
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: blog-deployment
|
||||
labels:
|
||||
role: app
|
||||
namespace: blog
|
||||
spec:
|
||||
replicas: 2
|
||||
selector:
|
||||
matchLabels:
|
||||
role: app
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
role: app
|
||||
spec:
|
||||
containers:
|
||||
- name: app
|
||||
image: "docker-registry.avril/scubbo/blog_nginx:built_in_ci"
|
||||
imagePullPolicy: 'Always'
|
||||
resources:
|
||||
requests:
|
||||
cpu: 10m
|
Loading…
x
Reference in New Issue
Block a user