kopia lustrzana https://github.com/FacilMap/facilmap
Run tests in GitHub Action
rodzic
fad68137a1
commit
dc3973f0c0
|
@ -5,6 +5,9 @@ on:
|
|||
branches:
|
||||
- 'vue3'
|
||||
|
||||
env:
|
||||
TAG: facilmap/facilmap:vue3
|
||||
|
||||
jobs:
|
||||
push_to_registry:
|
||||
name: Push Docker image to Docker Hub
|
||||
|
@ -13,23 +16,47 @@ jobs:
|
|||
-
|
||||
name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
-
|
||||
name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
|
||||
-
|
||||
name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
-
|
||||
name: Login to DockerHub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
-
|
||||
name: Build and push (FacilMap)
|
||||
id: docker_build_facilmap
|
||||
name: Build docker image
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
push: true
|
||||
context: .
|
||||
tags: facilmap/facilmap:vue3
|
||||
load: true
|
||||
tags: |
|
||||
${{env.TAG}}
|
||||
facilmap-ci
|
||||
|
||||
-
|
||||
name: Start integration test components
|
||||
uses: isbang/compose-action@v1.5.1
|
||||
with:
|
||||
compose-file: ./integration-tests/docker-compose.yml
|
||||
|
||||
-
|
||||
name: Run integration tests
|
||||
run: >-
|
||||
docker run --rm -u root --add-host host.docker.internal:host-gateway facilmap-ci sh -c "
|
||||
yarn workspaces focus facilmap-integration-tests &&
|
||||
FACILMAP_URL=http://host.docker.internal:8080 yarn workspace facilmap-integration-tests run integration-tests &&
|
||||
FACILMAP_URL=http://host.docker.internal:8081 yarn workspace facilmap-integration-tests run integration-tests
|
||||
"
|
||||
|
||||
-
|
||||
name: Push docker image
|
||||
run: docker push "$TAG"
|
|
@ -13,7 +13,13 @@ WORKDIR /opt/facilmap
|
|||
|
||||
COPY ./ ./
|
||||
|
||||
RUN yarn install && yarn run build:frontend:app && yarn run build:server && yarn workspaces focus -A --production
|
||||
RUN yarn install && \
|
||||
yarn check-types && \
|
||||
yarn lint && \
|
||||
yarn test && \
|
||||
yarn run build:frontend:app && \
|
||||
yarn run build:server && \
|
||||
yarn workspaces focus -A --production
|
||||
|
||||
RUN mkdir -p "$CACHE_DIR" && chown -R facilmap:facilmap "$CACHE_DIR"
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@
|
|||
"@types/geojson": "^7946.0.13",
|
||||
"rimraf": "^5.0.5",
|
||||
"typescript": "^5.3.3",
|
||||
"vite": "^5.0.10",
|
||||
"vite": "^5.0.12",
|
||||
"vite-plugin-dts": "^3.7.0"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -69,7 +69,7 @@
|
|||
"pluralize": "^8.0.0",
|
||||
"popper-max-size-modifier": "^0.2.0",
|
||||
"tablesorter": "^2.31.3",
|
||||
"vite": "^5.0.10",
|
||||
"vite": "^5.0.12",
|
||||
"vite-plugin-css-injected-by-js": "^3.3.1",
|
||||
"vite-plugin-dts": "^3.7.0",
|
||||
"vue": "^3.4.0",
|
||||
|
|
|
@ -0,0 +1,42 @@
|
|||
services:
|
||||
facilmap-mysql:
|
||||
image: facilmap-ci
|
||||
links:
|
||||
- mysql
|
||||
ports:
|
||||
- "8080:8080"
|
||||
environment:
|
||||
DB_TYPE: mysql
|
||||
DB_HOST: mysql
|
||||
DB_NAME: facilmap
|
||||
DB_USER: facilmap
|
||||
DB_PASSWORD: facilmap
|
||||
|
||||
mysql:
|
||||
image: mysql:5.7
|
||||
environment:
|
||||
MYSQL_DATABASE: facilmap
|
||||
MYSQL_USER: facilmap
|
||||
MYSQL_PASSWORD: facilmap
|
||||
MYSQL_RANDOM_ROOT_PASSWORD: "true"
|
||||
|
||||
|
||||
facilmap-postgres:
|
||||
image: facilmap-ci
|
||||
links:
|
||||
- postgres
|
||||
ports:
|
||||
- "8081:8080"
|
||||
environment:
|
||||
DB_TYPE: postgres
|
||||
DB_HOST: postgres
|
||||
DB_NAME: facilmap
|
||||
DB_USER: facilmap
|
||||
DB_PASSWORD: facilmap
|
||||
|
||||
postgres:
|
||||
image: postgis/postgis:16-3.4
|
||||
environment:
|
||||
POSTGRES_USER: facilmap
|
||||
POSTGRES_PASSWORD: facilmap
|
||||
POSTGRES_DB: facilmap
|
|
@ -28,6 +28,9 @@
|
|||
},
|
||||
"devDependencies": {
|
||||
"@types/lodash-es": "^4.17.12",
|
||||
"typescript": "^5.3.3"
|
||||
"typescript": "^5.3.3",
|
||||
"vite": "^5.0.12",
|
||||
"vite-plugin-dts": "^3.7.1",
|
||||
"vite-tsconfig-paths": "^4.3.1"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -71,7 +71,7 @@
|
|||
"svgo": "^3.1.0",
|
||||
"tsx": "^4.7.0",
|
||||
"typescript": "^5.3.3",
|
||||
"vite": "^5.0.10",
|
||||
"vite": "^5.0.12",
|
||||
"vite-plugin-css-injected-by-js": "^3.3.1",
|
||||
"vite-plugin-dts": "^3.7.0",
|
||||
"vite-tsconfig-paths": "^4.2.3",
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
#!/usr/bin/env node
|
||||
/* eslint-disable */
|
||||
import { startServer } from "../dist/facilmap-server.mjs";
|
||||
|
||||
await startServer();
|
|
@ -83,7 +83,7 @@
|
|||
"rimraf": "^5.0.5",
|
||||
"tsx": "^4.7.0",
|
||||
"typescript": "^5.3.3",
|
||||
"vite": "^5.0.10",
|
||||
"vite": "^5.0.12",
|
||||
"vite-node": "^1.1.0",
|
||||
"vite-plugin-dts": "^3.7.0",
|
||||
"vite-tsconfig-paths": "^4.2.3",
|
||||
|
|
|
@ -31,7 +31,7 @@ export function streamPromiseToStream<T>(streamPromise: Promise<ReadableStream<T
|
|||
const transform = new TransformStream({
|
||||
async start() {
|
||||
const stream = await streamPromise;
|
||||
stream.pipeTo(transform.writable);
|
||||
stream.pipeTo(transform.writable).catch(() => {}); // Catch error to avoid unhandled rejection, see https://github.com/nodejs/node/issues/50707
|
||||
}
|
||||
});
|
||||
return transform.readable;
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
"devDependencies": {
|
||||
"rimraf": "^5.0.5",
|
||||
"typescript": "^5.3.3",
|
||||
"vite": "^5.0.10",
|
||||
"vite": "^5.0.12",
|
||||
"vite-plugin-dts": "^3.7.0"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -52,7 +52,7 @@
|
|||
"@types/linkifyjs": "^2.1.7",
|
||||
"rimraf": "^5.0.5",
|
||||
"typescript": "^5.3.3",
|
||||
"vite": "^5.0.10",
|
||||
"vite": "^5.0.12",
|
||||
"vite-plugin-dts": "^3.7.0",
|
||||
"vitest": "^1.1.0"
|
||||
}
|
||||
|
|
73
yarn.lock
73
yarn.lock
|
@ -3423,7 +3423,7 @@ __metadata:
|
|||
rimraf: ^5.0.5
|
||||
socket.io-client: ^4.7.2
|
||||
typescript: ^5.3.3
|
||||
vite: ^5.0.10
|
||||
vite: ^5.0.12
|
||||
vite-plugin-dts: ^3.7.0
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
@ -3476,7 +3476,7 @@ __metadata:
|
|||
tablesorter: ^2.31.3
|
||||
tsx: ^4.7.0
|
||||
typescript: ^5.3.3
|
||||
vite: ^5.0.10
|
||||
vite: ^5.0.12
|
||||
vite-plugin-css-injected-by-js: ^3.3.1
|
||||
vite-plugin-dts: ^3.7.0
|
||||
vite-tsconfig-paths: ^4.2.3
|
||||
|
@ -3498,6 +3498,9 @@ __metadata:
|
|||
lodash-es: ^4.17.21
|
||||
socket.io-client: ^4.7.2
|
||||
typescript: ^5.3.3
|
||||
vite: ^5.0.12
|
||||
vite-plugin-dts: ^3.7.1
|
||||
vite-tsconfig-paths: ^4.3.1
|
||||
vitest: ^1.1.1
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
@ -3533,7 +3536,7 @@ __metadata:
|
|||
svgo: ^3.1.0
|
||||
tsx: ^4.7.0
|
||||
typescript: ^5.3.3
|
||||
vite: ^5.0.10
|
||||
vite: ^5.0.12
|
||||
vite-plugin-css-injected-by-js: ^3.3.1
|
||||
vite-plugin-dts: ^3.7.0
|
||||
vite-tsconfig-paths: ^4.2.3
|
||||
|
@ -3602,7 +3605,7 @@ __metadata:
|
|||
tsx: ^4.7.0
|
||||
typescript: ^5.3.3
|
||||
unzipper: ^0.10.14
|
||||
vite: ^5.0.10
|
||||
vite: ^5.0.12
|
||||
vite-node: ^1.1.0
|
||||
vite-plugin-dts: ^3.7.0
|
||||
vite-tsconfig-paths: ^4.2.3
|
||||
|
@ -3617,7 +3620,7 @@ __metadata:
|
|||
"@types/geojson": ^7946.0.13
|
||||
rimraf: ^5.0.5
|
||||
typescript: ^5.3.3
|
||||
vite: ^5.0.10
|
||||
vite: ^5.0.12
|
||||
vite-plugin-dts: ^3.7.0
|
||||
zod: ^3.22.4
|
||||
languageName: unknown
|
||||
|
@ -3644,7 +3647,7 @@ __metadata:
|
|||
marked: ^11.1.0
|
||||
rimraf: ^5.0.5
|
||||
typescript: ^5.3.3
|
||||
vite: ^5.0.10
|
||||
vite: ^5.0.12
|
||||
vite-plugin-dts: ^3.7.0
|
||||
vitest: ^1.1.0
|
||||
languageName: unknown
|
||||
|
@ -7400,6 +7403,20 @@ __metadata:
|
|||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"tsconfck@npm:^3.0.1":
|
||||
version: 3.0.1
|
||||
resolution: "tsconfck@npm:3.0.1"
|
||||
peerDependencies:
|
||||
typescript: ^5.0.0
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
bin:
|
||||
tsconfck: bin/tsconfck.js
|
||||
checksum: 8ce536b2888c871531bc629ce11b13d22cdaa8f6539e5e16cd58ea0b6a4a9561dd83065db1c2d3c0bb03942cd7fa48c56f8e034e5298bb8c30be4578359ba57d
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"tsconfig-paths@npm:^3.15.0":
|
||||
version: 3.15.0
|
||||
resolution: "tsconfig-paths@npm:3.15.0"
|
||||
|
@ -7740,6 +7757,26 @@ __metadata:
|
|||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"vite-plugin-dts@npm:^3.7.1":
|
||||
version: 3.7.1
|
||||
resolution: "vite-plugin-dts@npm:3.7.1"
|
||||
dependencies:
|
||||
"@microsoft/api-extractor": 7.39.0
|
||||
"@rollup/pluginutils": ^5.1.0
|
||||
"@vue/language-core": ^1.8.26
|
||||
debug: ^4.3.4
|
||||
kolorist: ^1.8.0
|
||||
vue-tsc: ^1.8.26
|
||||
peerDependencies:
|
||||
typescript: "*"
|
||||
vite: "*"
|
||||
peerDependenciesMeta:
|
||||
vite:
|
||||
optional: true
|
||||
checksum: bd6cd45d0b5efa1b3a1eea003f4c67c9811bfc222d7616f6def1cd5284a175733340ea3646234df4c55f5929dfcb8b97c3c1e5c9b73bbad4622f9a2a1042d7e7
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"vite-tsconfig-paths@npm:^4.2.3":
|
||||
version: 4.2.3
|
||||
resolution: "vite-tsconfig-paths@npm:4.2.3"
|
||||
|
@ -7756,9 +7793,25 @@ __metadata:
|
|||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"vite@npm:^5.0.0, vite@npm:^5.0.10":
|
||||
version: 5.0.10
|
||||
resolution: "vite@npm:5.0.10"
|
||||
"vite-tsconfig-paths@npm:^4.3.1":
|
||||
version: 4.3.1
|
||||
resolution: "vite-tsconfig-paths@npm:4.3.1"
|
||||
dependencies:
|
||||
debug: ^4.1.1
|
||||
globrex: ^0.1.2
|
||||
tsconfck: ^3.0.1
|
||||
peerDependencies:
|
||||
vite: "*"
|
||||
peerDependenciesMeta:
|
||||
vite:
|
||||
optional: true
|
||||
checksum: 2934d5d674e0b6ab8d435d4262ff30143c30512072d71ece5a3859a70a188cbdbcc2b0370277049ab551f7bbb6ffb2be94a0bf30154e5c58d38b32adce9740bd
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"vite@npm:^5.0.0, vite@npm:^5.0.12":
|
||||
version: 5.0.12
|
||||
resolution: "vite@npm:5.0.12"
|
||||
dependencies:
|
||||
esbuild: ^0.19.3
|
||||
fsevents: ~2.3.3
|
||||
|
@ -7792,7 +7845,7 @@ __metadata:
|
|||
optional: true
|
||||
bin:
|
||||
vite: bin/vite.js
|
||||
checksum: a1c96be1dc8bafb981c0874813a6b783ee9c4cd235188d7dc746133972d8992fe85111b7402365fee698ffcb626cd31b39bf2f2523140e50b07b81ce3c0139d1
|
||||
checksum: b97b6f1c204d9091d0973626827a6e9d8e8b1959ebd0877b6f76e7068e1e7adf9ecd3b1cc382cbab9d421e3eeca5e1a95f27f9c1734439b229f5a58ef2052fa4
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue