added ci/cd
All checks were successful
build / build (push) Successful in 28s

This commit is contained in:
cheetah 2025-04-05 13:43:13 +02:00
parent 990eec7dd0
commit c5ee61ff45
6 changed files with 81 additions and 34 deletions

View file

@ -0,0 +1,25 @@
name: build
on:
push:
pull_request:
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-22.04
steps:
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
registry: git.cheetah.cat
username: ${{ github.actor }}
password: ${{ secrets.PAT_TOKEN }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build and push
uses: docker/build-push-action@v6
with:
platforms: linux/amd64
push: true
tags: git.cheetah.cat/smartpager/${{ github.event.repository.name }}:latest

17
Dockerfile Normal file
View file

@ -0,0 +1,17 @@
ARG NODE_VERSION=23.0.0
FROM node:${NODE_VERSION}-alpine
ENV NODE_ENV production
WORKDIR /usr/src/app
COPY package.json .
RUN npm install
COPY . .
USER node
EXPOSE 3090
CMD node index.js

20
compose.yaml Normal file
View file

@ -0,0 +1,20 @@
services:
dispatcher:
image: git.cheetah.cat/smartpager/dispatcher:latest
environment:
NODE_ENV: production
volumes:
- ../dispatcher/config.json:/usr/src/app/config.json
ports:
- 3000:3000
- 3001:3001
msg_mowas:
build:
context: .
environment:
NODE_ENV: production
DISPATCHER: "dispatcher:3000"
volumes:
- ./config.json:/usr/src/app/config.json
ports:
- 3090:3090

8
config.default.json Normal file
View file

@ -0,0 +1,8 @@
{
"pager": {
"url": "http://127.0.0.1:3000/api/message/advanced"
},
"germanUmlautSupport": true,
"regions": [
]
}

View file

@ -1,39 +1,8 @@
{
"pager": {
"url": "http://127.0.0.1:3000/api/message/advanced",
"params": {
"type": "simple",
"routing": {
"device": "generic",
"connectors": [
[
"dummy",
"1234567"
]
]
}
}
"url": "http://127.0.0.1:3000/api/message/advanced"
},
"germanUmlautSupport": true,
"regions": [
{
"name": "MD",
"active": true,
"params": {
"type": "duplex",
"routing": {
"device": "birdyslim",
"connectors": [
[
"dummy",
"123456"
]
]
}
},
"regionsID": "150030000000",
"mowas": true,
"preset": "184cca745aa"
}
]
}

View file

@ -1,6 +1,14 @@
const fs = require('fs')
const config = require('./config.json')
const actualConfig = require('./config.json')
const defaultConfig = require('./config.default.json')
const config = defaultConfig
Object.assign(config, actualConfig)
let dispatcherHost = "127.0.0.1:3000"
if (!!process.env.DISPATCHER) {
console.log("docker mode")
dispatcherHost = process.env.DISPATCHER
config.pager.url = `http://${ dispatcherHost }/api/message/advanced`
}
const axios = require('axios')