Add astro framework and update nodejs

This commit is contained in:
2026-03-07 11:06:07 +03:00
parent 7d488fbdf2
commit 08a160a6a1
10 changed files with 8191 additions and 6704 deletions

View File

@@ -9,103 +9,39 @@ vars:
sh: id -g
PROJECT: "homepage"
PHP_IMAGE: "{{.PROJECT}}-php"
NODE_IMAGE: "{{.PROJECT}}-node"
NODE_IMAGE: "{{.PROJECT}}-node"
DOCKER_COMMON_OPTS: >-
--rm
--interactive
--tty
--user {{.USER_ID}}:{{.GROUP_ID}}
--volume /etc/passwd:/etc/passwd:ro
--volume /etc/group:/etc/group:ro
--volume "./:/srv/app"
--workdir "/srv/app"
-e XDG_CONFIG_HOME=/srv/app/.config
-e XDG_CACHE_HOME=/srv/app/.cache
-e HOME=/srv/app/.home
tasks:
build-docker:
cmds:
- docker build --file docker/php/Dockerfile --tag "{{.PHP_IMAGE}}" .
- docker build --file docker/node/Dockerfile --tag "{{.NODE_IMAGE}}" .
composer:
cmds:
- docker run {{.DOCKER_COMMON_OPTS}} "{{.PHP_IMAGE}}" composer {{.CLI_ARGS}}
npm:
cmds:
- docker run {{.DOCKER_COMMON_OPTS}} "{{.NODE_IMAGE}}" npm {{.CLI_ARGS}}
sculpin:
install:
cmds:
- docker run {{.DOCKER_COMMON_OPTS}} "{{.PHP_IMAGE}}" ./vendor/bin/sculpin {{.CLI_ARGS}}
shell-node:
cmds:
- docker run {{.DOCKER_COMMON_OPTS}} "{{.NODE_IMAGE}}" bash
install-dependencies:
cmds:
- task: composer
vars: { CLI_ARGS: "install" }
- task: npm
vars: { CLI_ARGS: "install" }
format-pages:
dev:
cmds:
- task: npm
vars: { CLI_ARGS: 'run format-md' }
format-assets:
cmds:
- task: npm
vars: { CLI_ARGS: 'run format-webpack' }
- task: npm
vars: { CLI_ARGS: 'run format-js' }
- task: npm
vars: { CLI_ARGS: 'run format-vue' }
- task: npm
vars: { CLI_ARGS: 'run format-style' }
format-php:
cmds:
- docker run {{.DOCKER_COMMON_OPTS}} "{{.PHP_IMAGE}}" php-cs-fixer fix
build-dev:
vars:
APP_OUTPUT_DIR: output_dev
NPM_SCRIPT: build
APP_ENV: dev
APP_URL: homepage.site
cmds:
- rm -rf ./{{.APP_OUTPUT_DIR}}/*
- task: npm
vars: { CLI_ARGS: 'run {{.NPM_SCRIPT}}' }
- task: sculpin
vars: { CLI_ARGS: 'generate --env="{{.APP_ENV}}" --url="{{.APP_URL}}" --no-interaction -vv' }
- docker run {{.DOCKER_COMMON_OPTS}} -p 4321:4321 "{{.NODE_IMAGE}}" npm run dev
build-prod:
vars:
APP_OUTPUT_DIR: output_prod
NPM_SCRIPT: build-prod
APP_ENV: prod
APP_URL: https://vakhrushev.me
cmds:
- rm -rf ./{{.APP_OUTPUT_DIR}}/*
- task: npm
vars: { CLI_ARGS: 'run {{.NPM_SCRIPT}}' }
- task: sculpin
vars: { CLI_ARGS: 'generate --env="{{.APP_ENV}}" --url="{{.APP_URL}}" --no-interaction -vv' }
make-post:
vars:
POST_DATE:
sh: date +'%Y-%m-%d'
cmd: touch "source/_articles/{{.POST_DATE}}-new-post.md"
- docker run {{.DOCKER_COMMON_OPTS}} "{{.NODE_IMAGE}}" npm run build
deploy:
vars:
@@ -123,7 +59,7 @@ tasks:
deploy-with-ansible:
internal: true
requires:
requires:
vars: [DOCKER_IMAGE]
dir: '/home/av/projects/private/pet-project-server'
cmds: