Compare commits
1 Commits
be7017736d
...
d52b203eb7
| Author | SHA1 | Date | |
|---|---|---|---|
| d52b203eb7 |
@@ -0,0 +1,71 @@
|
|||||||
|
name: Build docker image and push to test
|
||||||
|
run-name: Build Docker and Push
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build_image_push:
|
||||||
|
runs-on: gitea_runner
|
||||||
|
name: Build binaries, Build docker image, Apply on test
|
||||||
|
|
||||||
|
env:
|
||||||
|
REGISTRY_ADDRESS: registry.ma-al.pl
|
||||||
|
DOCKER_APP_NAME: cl-project
|
||||||
|
MAAL_REGISTRY_USER: ${{ secrets.MAAL_REGISTRY_USER }}
|
||||||
|
MAAL_REGISTRY_PASSWORD: ${{ secrets.MAAL_REGISTRY_PASSWORD }}
|
||||||
|
MAAL_SSH_PRIVATE_KEY: ${{ secrets.MAAL_SSH_PRIVATE_KEY }}
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Pull Git Repo with Code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Generate version
|
||||||
|
run: echo "VERSION=$(date +%Y%d%m_%H%M)" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Login to registry
|
||||||
|
run: |
|
||||||
|
echo "${{ secrets.MAAL_REGISTRY_PASSWORD }}" | docker login registry.ma-al.pl \
|
||||||
|
-u "${{ secrets.MAAL_REGISTRY_USER }}" \
|
||||||
|
--password-stdin
|
||||||
|
|
||||||
|
- name: Build application image
|
||||||
|
run: |
|
||||||
|
cat <<EOF > temp.Dockerfile
|
||||||
|
FROM oven/bun:1
|
||||||
|
WORKDIR /app
|
||||||
|
COPY . /app
|
||||||
|
RUN bun install --frozen-lockfile
|
||||||
|
USER bun
|
||||||
|
EXPOSE 3000
|
||||||
|
ENTRYPOINT ["bun", "./src/server.js"]
|
||||||
|
EOF
|
||||||
|
|
||||||
|
docker build \
|
||||||
|
-t "${{ env.REGISTRY_ADDRESS }}/${{ env.DOCKER_APP_NAME }}:${{ env.VERSION }}" \
|
||||||
|
-t "${{ env.REGISTRY_ADDRESS }}/${{ env.DOCKER_APP_NAME }}:latest" \
|
||||||
|
-f temp.Dockerfile .
|
||||||
|
|
||||||
|
rm temp.Dockerfile
|
||||||
|
|
||||||
|
- name: Push image
|
||||||
|
run: |
|
||||||
|
docker push "${{ env.REGISTRY_ADDRESS }}/${{ env.DOCKER_APP_NAME }}:${{ env.VERSION }}"
|
||||||
|
docker push "${{ env.REGISTRY_ADDRESS }}/${{ env.DOCKER_APP_NAME }}:latest"
|
||||||
|
|
||||||
|
- name: Setup SSH
|
||||||
|
run: |
|
||||||
|
mkdir -p ~/.ssh
|
||||||
|
echo "${{ env.MAAL_SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa
|
||||||
|
chmod 600 ~/.ssh/id_rsa
|
||||||
|
ssh-keyscan 192.168.220.30 >> ~/.ssh/known_hosts
|
||||||
|
|
||||||
|
- name: Execute Remote Command
|
||||||
|
run: |
|
||||||
|
echo "Deploying version: ${{ env.VERSION }}"
|
||||||
|
ssh docker@192.168.220.30 \
|
||||||
|
"docker compose -f /volume/docker/sys/portainer/compose/71/docker-compose.yml -p mwingz_ma-al_pl pull && \
|
||||||
|
docker compose -f /volume/docker/sys/portainer/compose/71/docker-compose.yml -p mwingz_ma-al_pl up -d"
|
||||||
|
|
||||||
Reference in New Issue
Block a user