Compare commits
6 commits
Author | SHA1 | Date | |
---|---|---|---|
025ff6a42f | |||
a54baf4b3d | |||
677b762a71 | |||
a5e6c6fa3b | |||
8fda8a7309 | |||
197b10cccf |
4 changed files with 22 additions and 73 deletions
|
@ -5,7 +5,7 @@ on:
|
||||||
push:
|
push:
|
||||||
tags:
|
tags:
|
||||||
- '[0-9]+.[0-9]+.[0-9]+'
|
- '[0-9]+.[0-9]+.[0-9]+'
|
||||||
- '[0-9]+.[0-9]+.[0-9]+rc[0-9]+'
|
- '[0-9]+.[0-9]+.[0-9]+-rc.[0-9]+'
|
||||||
jobs:
|
jobs:
|
||||||
test:
|
test:
|
||||||
runs-on: docker
|
runs-on: docker
|
||||||
|
@ -35,13 +35,12 @@ jobs:
|
||||||
-
|
-
|
||||||
name: Check if Version in package.json matches Tag
|
name: Check if Version in package.json matches Tag
|
||||||
run: |
|
run: |
|
||||||
echo "Test"
|
VERSION=$(cat package.json | grep "version" | sed 's/.*://' | tr -d , | tr -d \" | tr -d " " )
|
||||||
VERSION=$(cat package.json | grep "version" | sed 's/.*://' | tr -d , | tr -d \" )
|
|
||||||
if test $VERSION != "${{ github.ref_name }}"; then
|
if test $VERSION != "${{ github.ref_name }}"; then
|
||||||
echo "Expected Version is: '${{ github.ref_name }}' actual Version is: '$VERSION'";
|
echo "Expected Version is: '${{ github.ref_name }}' actual Version is: '$VERSION'";
|
||||||
exit 1
|
exit 1
|
||||||
else
|
else
|
||||||
echo "Version is: '$VERSION'";
|
echo "Version is: '$VERSION'";
|
||||||
fi
|
fi
|
||||||
|
|
||||||
build:
|
build:
|
||||||
|
@ -52,6 +51,10 @@ jobs:
|
||||||
-
|
-
|
||||||
name: Set up Docker Buildx
|
name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@v3
|
uses: docker/setup-buildx-action@v3
|
||||||
|
with:
|
||||||
|
config-inline: |
|
||||||
|
[registry."docker.io"]
|
||||||
|
mirrors = ["https://docker-cache.neshweb.net"]
|
||||||
-
|
-
|
||||||
name: Login to Docker Hub
|
name: Login to Docker Hub
|
||||||
uses: docker/login-action@v3
|
uses: docker/login-action@v3
|
||||||
|
@ -59,12 +62,22 @@ jobs:
|
||||||
registry: forgejo.neshweb.net
|
registry: forgejo.neshweb.net
|
||||||
username: ${{ secrets.FORGEJO_USERNAME }}
|
username: ${{ secrets.FORGEJO_USERNAME }}
|
||||||
password: ${{ secrets.FORGEJO_TOKEN }}
|
password: ${{ secrets.FORGEJO_TOKEN }}
|
||||||
|
-
|
||||||
|
name: Determine Docker tags
|
||||||
|
id: tags
|
||||||
|
run: |
|
||||||
|
if echo ${{ github.ref_name }} | grep -qi '\-rc' ; then
|
||||||
|
echo latest=forgejo.neshweb.net/neshweb-sites/${{ github.event.repository.name }}:preview >> $GITHUB_OUTPUT;
|
||||||
|
else
|
||||||
|
echo latest=forgejo.neshweb.net/neshweb-sites/${{ github.event.repository.name }}:latest >> $GITHUB_OUTPUT;
|
||||||
|
fi
|
||||||
|
echo version=forgejo.neshweb.net/neshweb-sites/${{ github.event.repository.name }}:${{ github.ref_name }} >> $GITHUB_OUTPUT;
|
||||||
-
|
-
|
||||||
name: Push to Package Registry
|
name: Push to Package Registry
|
||||||
uses: docker/build-push-action@v5
|
uses: docker/build-push-action@v5
|
||||||
with:
|
with:
|
||||||
push: true
|
push: true
|
||||||
tags: forgejo.neshweb.net/neshweb-sites/readyornot:${{ github.ref_name }}, forgejo.neshweb.net/neshweb-sites/readyornot:latest
|
tags: ${{ steps.tags.outputs.version }}, ${{ steps.tags.outputs.latest }}
|
||||||
|
|
||||||
release:
|
release:
|
||||||
needs: build
|
needs: build
|
||||||
|
|
|
@ -1,65 +0,0 @@
|
||||||
stages:
|
|
||||||
- lint
|
|
||||||
#- test
|
|
||||||
- build
|
|
||||||
- deploy
|
|
||||||
|
|
||||||
variables:
|
|
||||||
IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG
|
|
||||||
IMAGE_LATEST: $CI_REGISTRY_IMAGE:develop
|
|
||||||
|
|
||||||
|
|
||||||
.node:
|
|
||||||
image: ${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/node:latest
|
|
||||||
|
|
||||||
|
|
||||||
.docker:
|
|
||||||
image: ${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/docker:20
|
|
||||||
rules:
|
|
||||||
- if: $CI_COMMIT_TAG && $CI_COMMIT_TAG !~ /(^t)+.*/
|
|
||||||
variables:
|
|
||||||
IMAGE_LATEST: $CI_REGISTRY_IMAGE:latest
|
|
||||||
- if: $CI_COMMIT_TAG
|
|
||||||
|
|
||||||
|
|
||||||
linter:
|
|
||||||
image: !reference [.node, image]
|
|
||||||
stage: lint
|
|
||||||
before_script:
|
|
||||||
- yarn install
|
|
||||||
script:
|
|
||||||
- yarn lint
|
|
||||||
|
|
||||||
|
|
||||||
build:
|
|
||||||
image: !reference [.docker, image]
|
|
||||||
stage: build
|
|
||||||
before_script:
|
|
||||||
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
|
|
||||||
script:
|
|
||||||
- docker build -t $IMAGE_TAG .
|
|
||||||
after_script:
|
|
||||||
- docker save $IMAGE_TAG > docker.tar
|
|
||||||
artifacts:
|
|
||||||
expire_in: 30 mins
|
|
||||||
paths:
|
|
||||||
- docker.tar
|
|
||||||
rules:
|
|
||||||
- !reference [.docker, rules]
|
|
||||||
|
|
||||||
|
|
||||||
push:
|
|
||||||
image: !reference [.docker, image]
|
|
||||||
stage: deploy
|
|
||||||
needs:
|
|
||||||
- job: build
|
|
||||||
artifacts: true
|
|
||||||
before_script:
|
|
||||||
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
|
|
||||||
- docker load -i docker.tar
|
|
||||||
script:
|
|
||||||
- docker tag $IMAGE_TAG $IMAGE_LATEST
|
|
||||||
- docker push $IMAGE_TAG
|
|
||||||
- docker push $IMAGE_LATEST
|
|
||||||
rules:
|
|
||||||
- !reference [.docker, rules]
|
|
|
@ -7,6 +7,7 @@ WORKDIR /app
|
||||||
|
|
||||||
# Copy the files needed to install deps
|
# Copy the files needed to install deps
|
||||||
COPY package.json yarn.lock ./
|
COPY package.json yarn.lock ./
|
||||||
|
RUN yarn add sharp
|
||||||
RUN yarn install --frozen-lockfile
|
RUN yarn install --frozen-lockfile
|
||||||
|
|
||||||
## BUILD STEP
|
## BUILD STEP
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "readyornot",
|
"name": "readyornot",
|
||||||
"version": "0.1.7",
|
"version": "0.1.8",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev:debug": "NODE_OPTIONS='--inspect' next dev -H :: -p 8002",
|
"dev:debug": "NODE_OPTIONS='--inspect' next dev -H :: -p 8002",
|
||||||
|
|
Reference in a new issue