diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..35afa20 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,64 @@ +name: Build & Deploy + +on: + push: + tags: + - v* + # branches: + # - master + # - dev + + # pull_request: + # branches: + # - main + +env: + REGISTRY: ghcr.io + IMAGE_NAME: ${{ github.repository }} + TAG: ${{ github.ref_name }} + +jobs: + # test: + # timeout-minutes: 10 + # runs-on: ubuntu-latest + + # steps: + # - name: Checkout + # uses: actions/checkout@v1 + + # # - name: Build containers + # # run: docker compose build + + # - name: Test backend + # run: docker compose run --build backend sh -c 'npx prisma migrate reset --force && export NODE_ENV=test && npx jest' + + push: + timeout-minutes: 10 + runs-on: ubuntu-latest + # needs: test + # if: github.ref == 'refs/heads/main' + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: 'Login to GitHub Container Registry' + uses: docker/login-action@v1 + with: + registry: ghcr.io + username: ${{github.actor}} + password: ${{secrets.GITHUB_TOKEN}} + + - name: Build containers + run: docker compose -f docker-compose.yml -f docker-compose.prod.yml build + + - name: Add tag + run: docker tag ${{env.REGISTRY}}/${{env.IMAGE_NAME}}:latest ${{env.REGISTRY}}/${{env.IMAGE_NAME}}:${{env.TAG}} + + # - name: Tag with Git SHA + # run: docker tag ${{env.REGISTRY}}/${{env.IMAGE_NAME}}:latest ${{env.REGISTRY}}/${{env.IMAGE_NAME}}:${{github.sha}} + + - name: Push to Docker Hub + run: | + docker push ${{env.REGISTRY}}/${{env.IMAGE_NAME}}:${{env.TAG}} + docker push ${{env.REGISTRY}}/${{env.IMAGE_NAME}}:latest diff --git a/Dockerfile b/Dockerfile index 23ad782..d566937 100644 --- a/Dockerfile +++ b/Dockerfile @@ -26,7 +26,7 @@ COPY package-lock.json . RUN npm ci --omit dev -CMD [ "PORT", "9494", "node", "build" ] +CMD [ "npm", "run", "deply" ] FROM node:18 as development diff --git a/package.json b/package.json index b2be6c8..b059921 100644 --- a/package.json +++ b/package.json @@ -1,10 +1,15 @@ { "name": "reiverr", "version": "0.1.0", + "repository": { + "type": "git", + "url": "https://github.com/aleksilassila/reiverr" + }, "scripts": { "dev": "vite dev --host", "build": "vite build", "preview": "vite preview", + "deploy": "PORT=9494 node build/", "test": "playwright test", "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", diff --git a/src/routes/settings/+page.svelte b/src/routes/settings/+page.svelte index 2562162..0e71c41 100644 --- a/src/routes/settings/+page.svelte +++ b/src/routes/settings/+page.svelte @@ -1,10 +1,15 @@ + +