Blog deployment
This commit is contained in:
parent
c4e68ac959
commit
93d782548e
34
.drone.yml
34
.drone.yml
@ -19,15 +19,35 @@ steps:
|
|||||||
- git submodule init
|
- git submodule init
|
||||||
- git submodule update --recursive
|
- git submodule update --recursive
|
||||||
- hugo --source blog
|
- hugo --source blog
|
||||||
- |-
|
|
||||||
cat << EOF > Dockerfile
|
|
||||||
FROM nginxinc/nginx-unprivileged
|
|
||||||
COPY blog/public /usr/share/nginx/html
|
|
||||||
EOF
|
|
||||||
- name: push-built-image
|
- name: push-built-image
|
||||||
image: plugins/docker
|
image: plugins/docker
|
||||||
settings:
|
settings:
|
||||||
debug: true
|
|
||||||
repo: rassigma.avril:5000/scubbo/blog_nginx
|
repo: rassigma.avril:5000/scubbo/blog_nginx
|
||||||
tags: built_in_ci
|
tags: built_in_ci
|
||||||
insecure: true
|
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