Compare commits

..

6 Commits

Author SHA1 Message Date
giles 5a88017c61 sleep before build
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/promote/build Build is passing Details
continuous-integration/drone/promote/deploy Build is passing Details
2023-10-19 16:25:48 +01:00
giles 8472f77d24 fixed print of mail
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/promote/print Build is passing Details
continuous-integration/drone/promote/deploy Build was killed Details
continuous-integration/drone/promote/build Build is failing Details
2023-10-19 16:16:15 +01:00
giles 7694973da4 applied mail var
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/promote/print Build is passing Details
2023-10-19 16:12:51 +01:00
giles ca6cd5640f feat: mail configured with MAIL env var 2021-02-26 06:56:14 -05:00
Giles Bradshaw 6a35a57711 feat: save parameter
continuous-integration/drone/push Build is passing Details
continuous-integration/drone Build is passing Details
2020-10-24 13:38:52 +01:00
Giles Bradshaw c724ef1f6e feat: save parameter
continuous-integration/drone/push Build is passing Details
continuous-integration/drone Build is passing Details
2020-10-24 13:01:51 +01:00
8 changed files with 54 additions and 37 deletions

View File

@ -1,3 +1,5 @@
sleep 10
docker build ghost -t ${REGISTRY_DOMAIN}:${REGISTRY_PORT}/${ROOT}/${NAME}/my-ghost \ docker build ghost -t ${REGISTRY_DOMAIN}:${REGISTRY_PORT}/${ROOT}/${NAME}/my-ghost \
--build-arg REGISTRY=${REGISTRY_DOMAIN}:${REGISTRY_PORT}/${ROOT}/${NAME}/ \ --build-arg REGISTRY=${REGISTRY_DOMAIN}:${REGISTRY_PORT}/${ROOT}/${NAME}/ \
--build-arg THEME=${THEME} --build-arg THEME=${THEME}

View File

@ -128,12 +128,13 @@ steps:
- registry_domain - registry_domain
- registry_port - registry_port
- registry_password - registry_password
- destination_registry
script: script:
- "n=0\nwhile :\ndo\n docker login $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/ --username client --password \"$${REGISTRY_PASSWORD}\" \\\\\n && break # substitute your command here\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"login failed\"\n exit 1\n fi\n echo \"retrying login..$n\"\n sleep 5\ndone\n" - "n=0\nwhile :\ndo\n docker login $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/ --username client --password \"$${REGISTRY_PASSWORD}\" \\\\\n && break # substitute your command here\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"login failed\"\n exit 1\n fi\n echo \"retrying login..$n\"\n sleep 5\ndone\n"
- docker pull $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/alpine/git:v2.26.2 - docker pull $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/alpine/git:v2.26.2
- docker save $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/alpine/git:v2.26.2 -o /stack/.images/ghost/alpine_git:v2.26.2.tar - docker save $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/alpine/git:v2.26.2 -o /stack/.images/ghost/alpine_git:v2.26.2.tar
- echo "docker load alpine_git:v2.26.2.tar" >> /stack/.images/ghost/load.sh - echo "docker load < alpine_git:v2.26.2.tar" >> /stack/.images/ghost/load.sh
- echo "docker tag $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/alpine/git:v2.26.2 /stack/DOLLAR1/alpine/git:v2.26.2" >> /stack/.images/ghost/load.sh - echo "docker tag $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/alpine/git:v2.26.2 $${DESTINATION_REGISTRY}/stack/ghost/alpine/git:v2.26.2" >> /stack/.images/ghost/load.sh
- name: ghost:3.14.0 - name: ghost:3.14.0
image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea
@ -147,12 +148,13 @@ steps:
- registry_domain - registry_domain
- registry_port - registry_port
- registry_password - registry_password
- destination_registry
script: script:
- "n=0\nwhile :\ndo\n docker login $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/ --username client --password \"$${REGISTRY_PASSWORD}\" \\\\\n && break # substitute your command here\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"login failed\"\n exit 1\n fi\n echo \"retrying login..$n\"\n sleep 5\ndone\n" - "n=0\nwhile :\ndo\n docker login $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/ --username client --password \"$${REGISTRY_PASSWORD}\" \\\\\n && break # substitute your command here\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"login failed\"\n exit 1\n fi\n echo \"retrying login..$n\"\n sleep 5\ndone\n"
- docker pull $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/ghost:3.14.0 - docker pull $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/ghost:3.14.0
- docker save $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/ghost:3.14.0 -o /stack/.images/ghost/ghost:3.14.0.tar - docker save $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/ghost:3.14.0 -o /stack/.images/ghost/ghost:3.14.0.tar
- echo "docker load ghost:3.14.0.tar" >> /stack/.images/ghost/load.sh - echo "docker load < ghost:3.14.0.tar" >> /stack/.images/ghost/load.sh
- echo "docker tag $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/ghost:3.14.0 /stack/DOLLAR1/ghost:3.14.0" >> /stack/.images/ghost/load.sh - echo "docker tag $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/ghost:3.14.0 $${DESTINATION_REGISTRY}/stack/ghost/ghost:3.14.0" >> /stack/.images/ghost/load.sh
- name: mysql:5.7 - name: mysql:5.7
image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea
@ -166,12 +168,13 @@ steps:
- registry_domain - registry_domain
- registry_port - registry_port
- registry_password - registry_password
- destination_registry
script: script:
- "n=0\nwhile :\ndo\n docker login $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/ --username client --password \"$${REGISTRY_PASSWORD}\" \\\\\n && break # substitute your command here\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"login failed\"\n exit 1\n fi\n echo \"retrying login..$n\"\n sleep 5\ndone\n" - "n=0\nwhile :\ndo\n docker login $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/ --username client --password \"$${REGISTRY_PASSWORD}\" \\\\\n && break # substitute your command here\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"login failed\"\n exit 1\n fi\n echo \"retrying login..$n\"\n sleep 5\ndone\n"
- docker pull $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/mysql:5.7 - docker pull $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/mysql:5.7
- docker save $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/mysql:5.7 -o /stack/.images/ghost/mysql:5.7.tar - docker save $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/mysql:5.7 -o /stack/.images/ghost/mysql:5.7.tar
- echo "docker load mysql:5.7.tar" >> /stack/.images/ghost/load.sh - echo "docker load < mysql:5.7.tar" >> /stack/.images/ghost/load.sh
- echo "docker tag $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/mysql:5.7 /stack/DOLLAR1/mysql:5.7" >> /stack/.images/ghost/load.sh - echo "docker tag $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/mysql:5.7 $${DESTINATION_REGISTRY}/stack/ghost/mysql:5.7" >> /stack/.images/ghost/load.sh
- name: my-ghost - name: my-ghost
image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea
@ -185,12 +188,13 @@ steps:
- registry_domain - registry_domain
- registry_port - registry_port
- registry_password - registry_password
- destination_registry
script: script:
- "n=0\nwhile :\ndo\n docker login $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/ --username client --password \"$${REGISTRY_PASSWORD}\" \\\\\n && break # substitute your command here\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"login failed\"\n exit 1\n fi\n echo \"retrying login..$n\"\n sleep 5\ndone\n" - "n=0\nwhile :\ndo\n docker login $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/ --username client --password \"$${REGISTRY_PASSWORD}\" \\\\\n && break # substitute your command here\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"login failed\"\n exit 1\n fi\n echo \"retrying login..$n\"\n sleep 5\ndone\n"
- docker pull $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/my-ghost - docker pull $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/my-ghost
- docker save $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/my-ghost -o /stack/.images/ghost/built/my-ghost.tar - docker save $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/my-ghost -o /stack/.images/ghost/built/my-ghost.tar
- echo "docker load my-ghost.tar" >> /stack/.images/ghost/built/load.sh - echo "docker load my-ghost.tar" >> /stack/.images/ghost/built/load.sh
- echo "docker tag $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/my-ghost /stack/DOLLAR1/my-ghost" >> /stack/.images/ghost/built/load.sh - echo "docker tag $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/ghost/my-ghost ${DESINATION_REGISTRY}/stack/ghost/my-ghost" >> /stack/.images/ghost/built/load.sh
trigger: trigger:
event: event:
@ -217,32 +221,25 @@ steps:
- drone_build_number - drone_build_number
- drone_repo_name - drone_repo_name
- drone_repo_namespace - drone_repo_namespace
- mail_service - mail
- mail_user
- commento_origin - commento_origin
- theme - theme
- mysql_root_password - mysql_root_password
script: script:
- rm -f env-ghost - rm -f env-ghost
- "echo \"export MAIL_SERVICE='$${MAIL_SERVICE}'\" >> env-ghost # \"mail-service\"" - "echo \"export MAIL='$${MAIL}'\" >> env-ghost # \"mail\""
- "echo \"export MAIL_USER='$${MAIL_USER}'\" >> env-ghost # \"mail-user\""
- "echo \"export MAIL_PASSWORD='$${MAIL_PASSWORD}'\" >> env-ghost # \"mail-password\""
- "echo \"export COMMENTO_ORIGIN='$${COMMENTO_ORIGIN}'\" >> env-ghost # \"commento-origin\"" - "echo \"export COMMENTO_ORIGIN='$${COMMENTO_ORIGIN}'\" >> env-ghost # \"commento-origin\""
- "echo \"export THEME='$${THEME}'\" >> env-ghost # \"theme\"" - "echo \"export THEME='$${THEME}'\" >> env-ghost # \"theme\""
- "echo \"export MYSQL_ROOT_PASSWORD='$${MYSQL_ROOT_PASSWORD}'\" >> env-ghost # \"mysql-root-password\"" - "echo \"export MYSQL_ROOT_PASSWORD='$${MYSQL_ROOT_PASSWORD}'\" >> env-ghost # \"mysql-root-password\""
environment: environment:
COMMENTO_ORIGIN: COMMENTO_ORIGIN:
from_secret: commento-origin from_secret: commento-origin
MAIL_SERVICE: MAIL:
from_secret: mail-service from_secret: mail
MAIL_USER:
from_secret: mail-user
MYSQL_ROOT_PASSWORD: MYSQL_ROOT_PASSWORD:
from_secret: mysql-root-password from_secret: mysql-root-password
THEME: THEME:
from_secret: theme from_secret: theme
MAIL_PASSWORD:
from_secret: mail-password
trigger: trigger:
event: event:
@ -336,19 +333,16 @@ steps:
- registry_domain - registry_domain
- registry_port - registry_port
- registry_password - registry_password
- mail_service - mail
- mail_user
- commento_origin - commento_origin
- theme - theme
- mysql_root_password - mysql_root_password
- theme - theme
script: script:
- export MYSQL_ROOT_PASSWORD=$${MYSQL_ROOT_PASSWORD} - export MYSQL_ROOT_PASSWORD=$${MYSQL_ROOT_PASSWORD}
- export MAIL_SERVICE=$${MAIL_SERVICE} - export MAIL=$${MAIL}
- export MAIL_USER=$${MAIL_USER}
- export COMMENTO_ORIGIN=$${COMMENTO_ORIGIN} - export COMMENTO_ORIGIN=$${COMMENTO_ORIGIN}
- export THEME=$${THEME} - export THEME=$${THEME}
- export THEME=$${THEME}
- export SCHEME=$${SCHEME} - export SCHEME=$${SCHEME}
- export DOMAIN=$${DOMAIN} - export DOMAIN=$${DOMAIN}
- export REGISTRY_DOMAIN=$${REGISTRY_DOMAIN} - export REGISTRY_DOMAIN=$${REGISTRY_DOMAIN}
@ -364,10 +358,8 @@ steps:
environment: environment:
COMMENTO_ORIGIN: COMMENTO_ORIGIN:
from_secret: commento-origin from_secret: commento-origin
MAIL_SERVICE: MAIL:
from_secret: mail-service from_secret: mail
MAIL_USER:
from_secret: mail-user
MYSQL_ROOT_PASSWORD: MYSQL_ROOT_PASSWORD:
from_secret: mysql-root-password from_secret: mysql-root-password
THEME: THEME:

View File

@ -1,6 +1,6 @@
{ {
"private": true, "private": true,
"dependencies": { "dependencies": {
"@sigyl/jsonnet-drone": "^0.4.5" "@sigyl/jsonnet-drone": "^1.0.0"
} }
} }

View File

@ -12,10 +12,10 @@
resolved "https://registry.yarnpkg.com/@sigyl/jsonnet-drone-environment/-/jsonnet-drone-environment-0.0.5.tgz#9ea85e08904777bd21a3e4b30b0b91461d0285ff" resolved "https://registry.yarnpkg.com/@sigyl/jsonnet-drone-environment/-/jsonnet-drone-environment-0.0.5.tgz#9ea85e08904777bd21a3e4b30b0b91461d0285ff"
integrity sha512-xVGmdMO1pOyozAWUbJm6mzKBgsLPJ+1hWnGCK3AxPkr7kkDh18hu30+TLzlcQtqq76s5jUfvJUztezsGj/mIcw== integrity sha512-xVGmdMO1pOyozAWUbJm6mzKBgsLPJ+1hWnGCK3AxPkr7kkDh18hu30+TLzlcQtqq76s5jUfvJUztezsGj/mIcw==
"@sigyl/jsonnet-drone@^0.4.5": "@sigyl/jsonnet-drone@^1.0.0":
version "0.4.5" version "1.0.0"
resolved "https://registry.yarnpkg.com/@sigyl/jsonnet-drone/-/jsonnet-drone-0.4.5.tgz#deb45b3fa837650d518b651044e993266c7386ac" resolved "https://registry.yarnpkg.com/@sigyl/jsonnet-drone/-/jsonnet-drone-1.0.0.tgz#943bd8a1abc8a916026944816709f5ed1d8e7ef8"
integrity sha512-s7/QHlT4YydwDPz/puR4iy7rcTl5vqR4YQmqlXCMA7VlcYPT4tC3GOb38njwZfNN4mxNa6oDKaM6eZEJX4SpiQ== integrity sha512-ubyVC1/nAM584wTnnRBZTOP18z28Yy7SRApvSuo/3y2arngKlNI1FwOzKTFt/7L9+rNy19dRO/g0obEkyR3KmA==
dependencies: dependencies:
"@sigyl/jsonnet-compose" "^0.0.2" "@sigyl/jsonnet-compose" "^0.0.2"
"@sigyl/jsonnet-drone-environment" "0.0.5" "@sigyl/jsonnet-drone-environment" "0.0.5"

View File

@ -16,12 +16,11 @@ services:
- ghost-content-data:/var/lib/ghost/content/data - ghost-content-data:/var/lib/ghost/content/data
- ghost-content-logs:/var/lib/ghost/content/logs - ghost-content-logs:/var/lib/ghost/content/logs
environment: environment:
- NODE_ENV=production
- DOMAIN=$DOMAIN - DOMAIN=$DOMAIN
- SCHEME=$SCHEME - SCHEME=$SCHEME
- MAIL-SERVICE=$MAIL-SERVICE
- MAIL-USER=$MAIL-USER
- MAIL-PASSWORD=$MAIL-PASSWORD
- COMMENTO_ORIGIN=$COMMENTO_ORIGIN - COMMENTO_ORIGIN=$COMMENTO_ORIGIN
- MAIL=$MAIL
- database__client=mysql - database__client=mysql
- database__connection__host=ghost-mysql - database__connection__host=ghost-mysql
- database__connection__user=root - database__connection__user=root

View File

@ -10,7 +10,7 @@ FROM ${REGISTRY}ghost:3.14.0
RUN apt-get update RUN apt-get update
RUN apt-get install -y gettext RUN apt-get install -y gettext
COPY config.production.json /var/lib/ghost/ COPY config.production.json.template /var/lib/ghost/
COPY --from=git /themes/ /var/lib/ghost/content/themes/ COPY --from=git /themes/ /var/lib/ghost/content/themes/
COPY post.hbs /hbs/ COPY post.hbs /hbs/
COPY run.sh / COPY run.sh /

View File

@ -0,0 +1,24 @@
{
"url": "${SCHEME}://${DOMAIN}/",
"server": {
"port": 2368,
"host": "0.0.0.0"
},
"database": {
"client": "sqlite3",
"connection": {
"filename": "/var/lib/ghost/content/data/ghost.db"
}
},
"mail": ${MAIL},
"logging": {
"transports": [
"file",
"stdout"
]
},
"process": "systemd",
"paths": {
"contentPath": "/var/lib/ghost/content"
}
}

View File

@ -1,3 +1,3 @@
envsubst < /var/lib/ghost/config.production.json > __tmp && mv __tmp /var/lib/ghost/config.production.json envsubst < /var/lib/ghost/config.production.json.template > /var/lib/ghost/config.production.json
envsubst < /hbs/post.hbs > /var/lib/ghost/content/themes/casper/post.hbs envsubst < /hbs/post.hbs > /var/lib/ghost/content/themes/casper/post.hbs
node "current/index.js" node "current/index.js"