deployment.yaml
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: openshift-gitops-argocd-application-controller-admin
namespace: blog
subjects:
- kind: ServiceAccount
name: openshift-gitops-argocd-application-controller
namespace: openshift-gitops
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: admin
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: blog
namespace: blog
labels:
app.kubernetes.io/version: '2d7cb1c.20250826195131'
spec:
replicas: 1
selector:
matchLabels:
app: blog
template:
metadata:
labels:
app: blog
spec:
volumes:
- name: workdir
emptyDir: {}
containers:
- name: blogrunner
image: quay.io/mauriciosantiagodecastro/blogrunner:latest
imagePullPolicy: Always
ports:
- containerPort: 4000
volumeMounts:
- name: workdir
mountPath: /workdir
env:
- name: GIT_REPO
value: https://github.com/mauricioscastro/blog
- name: md2pdf
image: quay.io/mauriciosantiagodecastro/md2pdf
imagePullPolicy: Always
volumeMounts:
- name: workdir
mountPath: &pdf_collection_base_path /usr/local/documents/mscastro
env:
- name: PDF_COLLECTION_BASE_PATH
value: *pdf_collection_base_path
command:
- /bin/sh
args:
- -c
- "while true; do \n for md in `find $PDF_COLLECTION_BASE_PATH -name \"*.md\" -newermt \"10 seconds ago\" -size +10c | grep -v 404 | grep -v $PDF_COLLECTION_BASE_PATH/bundle | grep -v $PDF_COLLECTION_BASE_PATH/site`; do \n m2f $md pdf \\\n footerTemplate=\"<div style=\\\"font-size: 9px; margin: 0 auto;\\\"> <span class=\"pageNumber\"></span> / <span class=\"totalPages\"></span></div>\" \\\n headerTemplate=\"<span/>\" margin.top=\"0.8cm\" \n done\n sleep 10\ndone "
---
apiVersion: v1
kind: Service
metadata:
name: blog
namespace: blog
spec:
ports:
- port: 4000
selector:
app: blog
# oc adm policy add-cluster-role-to-user cluster-admin -z system:serviceaccount:openshift-gitops:openshift-gitops-argocd-application-controller
# oc adm policy add-cluster-role-to-user admin system:serviceaccount:openshift-gitops:openshift-gitops-argocd-application-controller
#
# project: default
# source:
# repoURL: https://github.com/mauricioscastro/blog
# path: cicd/argo
# targetRevision: HEAD
# destination:
# server: https://kubernetes.default.svc
# namespace: blog
# syncPolicy:
# automated:
# prune: true
# selfHeal: true
# syncOptions:
# - CreateNamespace=true