push version #8

Merged
mattdimegs merged 51 commits from bugfix/code-change4john into main 2025-06-11 23:01:08 +00:00
9 changed files with 53 additions and 33 deletions

View file

@ -71,7 +71,7 @@ jobs:
username: ${{ secrets.DOCKERHUB_USER }} username: ${{ secrets.DOCKERHUB_USER }}
password: ${{ secrets.DOCKERHUB_TOKEN }} password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Docker Build Backend - name: Docker Build Backend
run: docker build -f web/Dockerfile -t john4064/shiftsync:latest_web ./web --build-arg TEST=${{ secrets.TEST }} run: docker build -f web/Dockerfile -t john4064/shiftsync:latest_web ./web --build-arg ENVIRONMENT=dev
- name: Docker Push Backend - name: Docker Push Backend
run: docker push john4064/shiftsync:latest_web run: docker push john4064/shiftsync:latest_web
deploy: deploy:

View file

@ -71,9 +71,9 @@ jobs:
username: ${{ secrets.DOCKERHUB_USER }} username: ${{ secrets.DOCKERHUB_USER }}
password: ${{ secrets.DOCKERHUB_TOKEN }} password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Docker Build Backend - name: Docker Build Backend
run: docker build -f web/Dockerfile -t john4064/shiftsync:latest_web ./web --build-arg TEST=${{ secrets.TEST }} run: docker build -f web/Dockerfile -t john4064/shiftsync:prod_web ./web --build-arg ENVIRONMENT=prod
- name: Docker Push Backend - name: Docker Push Backend
run: docker push john4064/shiftsync:latest_web run: docker push john4064/shiftsync:prod_web
deploy: deploy:
needs: build needs: build
if: needs.build.result == 'success' && inputs.workflow_type == 'release' if: needs.build.result == 'success' && inputs.workflow_type == 'release'

View file

@ -1,11 +1,11 @@
{ {
"name": "shiftsync-website", "name": "shiftsync-website",
"private": true, "private": true,
"version": "1.0.1", "version": "0.0.0",
"main": "index.js", "main": "index.js",
"scripts": { "scripts": {
"api": "npm run dev --prefix api", "api": "npm run dev --prefix api",
"web": "npm run dev --prefix web", "web": "npm run local --prefix web",
"dev": "concurrently \"npm run api\" \"npm run web\"", "dev": "concurrently \"npm run api\" \"npm run web\"",
"test": "echo \"Error: no test specified\" && exit 1" "test": "echo \"Error: no test specified\" && exit 1"
}, },

View file

@ -2,9 +2,6 @@ FROM node:20-alpine
WORKDIR /app WORKDIR /app
RUN echo ":tools: Listing context:" && ls -R . && echo "************************"
COPY ./package*.json ./ COPY ./package*.json ./
RUN npm ci RUN npm ci
@ -14,5 +11,8 @@ COPY . ./
EXPOSE 5173 EXPOSE 5173
EXPOSE 5171 EXPOSE 5171
ARG ENVIRONMENT
ENV ENVIRONMENT ${ENVIRONMENT}
RUN echo ${ENVIRONMENT}
CMD ["npm", "run", "dev"] CMD npm run ${ENVIRONMENT}

View file

@ -1,6 +1,6 @@
services: services:
shiftsync-web: shiftsync-web:
image: 'docker.io/john4064/shiftsync:latest_web' image: 'docker.io/john4064/shiftsync:prod_web'
environment: environment:
- 'TESTVAR=${COOLIFY_VAR}' - 'TESTVAR=${COOLIFY_VAR}'
volumes: volumes:

13
web/package-lock.json generated
View file

@ -1748,9 +1748,9 @@
} }
}, },
"node_modules/@types/estree": { "node_modules/@types/estree": {
"version": "1.0.8", "version": "1.0.7",
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz",
"integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==",
"dev": true, "dev": true,
"license": "MIT" "license": "MIT"
}, },
@ -3488,13 +3488,6 @@
"fsevents": "~2.3.2" "fsevents": "~2.3.2"
} }
}, },
"node_modules/rollup/node_modules/@types/estree": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz",
"integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==",
"dev": true,
"license": "MIT"
},
"node_modules/scheduler": { "node_modules/scheduler": {
"version": "0.26.0", "version": "0.26.0",
"resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.26.0.tgz", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.26.0.tgz",

View file

@ -1,10 +1,12 @@
{ {
"name": "shiftsync-website-web", "name": "shiftsync-website-web",
"private": true, "private": true,
"version": "1.0.0", "version": "1.0.1",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "vite --host", "local": "vite",
"dev": "vite --host --mode dev",
"prod": "vite --host --mode prod",
"build": "vite build", "build": "vite build",
"lint": "eslint .", "lint": "eslint .",
"preview": "vite preview" "preview": "vite preview"

View file

@ -1,6 +1,7 @@
import React, { useEffect } from 'react'; import React, { useEffect } from 'react';
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
import { useLocalStore } from '@components'; import { useLocalStore } from '@components';
import pkg from '../../../package.json';
export const Home = () => { export const Home = () => {
@ -16,6 +17,7 @@ export const Home = () => {
<div> <div>
<h1>Home Page</h1> <h1>Home Page</h1>
<Link to="/settings">Go to Settings</Link> <Link to="/settings">Go to Settings</Link>
<p>Version: {pkg.version}</p>
</div> </div>
); );
}; };

View file

@ -3,16 +3,39 @@ import react from '@vitejs/plugin-react';
import path from 'path'; import path from 'path';
// https://vite.dev/config/ // https://vite.dev/config/
export default defineConfig({ export default defineConfig(({ mode = 'local' }) => {
plugins: [react()], const isDev = mode === 'dev';
server:{ const isProd = mode === 'prod';
host: true,
allowedHosts: ['shift.code-catalyst.com'] return {
}, plugins: [react()],
resolve: { server:{
alias: { host: true,
'@src': path.resolve(__dirname, 'src'), allowedHosts: ['.code-catalyst.com'],
'@components': path.resolve(__dirname, 'components') cors: true,
hmr: isDev
? {
protocol: 'wss',
host: 'shift-dev.code-catalyst.com',
clientPort: 443,
}
: isProd ?
{
protocol: 'wss',
host: 'shift.code-catalyst.com',
clientPort: 443,
}
: {
protocol: 'wss',
host: 'localhost',
clientPort: 443,
},
}, },
}, resolve: {
alias: {
'@src': path.resolve(__dirname, 'src'),
'@components': path.resolve(__dirname, 'components')
},
},
}
}); });