En webbtjänst för att spåra och rekonfigurera vad som körs i dina OpenShift-miljöer.
A progressive Node.js framework for building efficient and scalable server-side applications.
$ npm install
# create development env and start in watch mode
$ cp -v .env.template .env.development
$ NODE_ENV=development npm run start:dev
# create prod env and start in production mode
$ cp -v .env.template .env.production
$ NODE_ENV=production npm run start:prod
Starta applikationen, exportera den biljett/JWT som applikationen autogenerer, och kör sedan Bash-scriptet som innehåller cURL-kommandon för setup av demo-miljön:
$ export ACCESS_TOKEN=$(cat ./tmp/access_token.txt) # Default OAUTH2_LOCAL_ACCESS_TOKEN path.
$ bash scripts/setup-all.sh
Därefter behöver applikationen startas om en första gång, sedan kan man gå vidare med att öppna http://localhost:3000/ i Chrome och verifiera att man omdirigeras till en översiktssida som visar fyra komplexa matriser med miljöinformation.
- Starta appen i development-läge så att utvecklingsdatabas-schemat är up-to-date, stoppa sedan appen igen
- Backa upp utvecklingsdatabasen,
cp -v ./tmp/konfigurator.db ./tmp/pre-migrate-backup.db
- Inför ändringarna i de entiteter som ska uppdateras och auto-generera en databas-migration:
npx ts-node ./node_modules/typeorm/cli.js migration:generate --name NamnPaNyMigr npm run format
- Öppna
./src/migrations/<langt timestamp>-NamnPaNyMigr.ts
och granska/städa upp innehållet - Starta appen i development-läge igen och testa igenom, kör igenom enhets- och end-2-end-testerna, o.s.v.
- Sälj in en vacker PR
# unit tests
$ npm run test
# e2e tests
$ npm run test:e2e
# test coverage
$ npm run test:cov
Installera Source-to-Image (S2I) och bygg senaste master-grenen:
$ s2i build https://github.com/mkdevops-se/konfigurator \
quay.io/centos7/nodejs-12-centos7 quay.io/mkdevops/konfigurator
Publicera Docker-imagen:
docker push quay.io/mkdevops/konfigurator
För mer permanent bruk kan Konfigurator deployas som en Docker-container:
$ docker-compose up -d konfigurator
Environment
-entiteten uppdaterad med en rad nya attribut:- Index-namn i OpenShift-plattformens loggarkiv (Kibana)
- Multipla inloggning-URL:er
- Stöd för att dölja en miljö från översiktssidan
Deployment
-entiteten uppdaterad med ett nyttbuild_info_api_path
-attribut som defaultar till/bygginfo
- Stöd för databas-migrationer via TypeORM och en README-instruktion för hur de skapas
- Användargränssnitt uppdaterat för att dölja tilltänkt framtida funktionalitet
- Miljööversikt uppdaterad med stöd för att uppdatera fritextkommentar om miljöstatus
- API-endpoints som tillhandahåller skriv-access begränsade till klienter med
en giltig biljett i
Authorization
-headern eller en inloggad OpenID Connect-session med Auth0 - README-instruktionen för Lokal demo-deployment uppdaterad med nytt förfarande
- Refaktorerad konfigurationshantering för utveckling och produktion
/health
-endpoint tillagd- Översiktssida för kända byggen från OpenShift under
/builds
- Översiktssida med Konfiguratorns historik av bakgrundsjobb under
/tasks
- S2I-stöd tillagt och dokumenterat tillsammans med publiceringssteg
package.json
-dependencies rättade för produktions-runtime- Docker Compose-fil för enkel deployment på hq.mkdevops.se
- Första version redo för integrering via OpenShift CI/CD pipeline och deployment i testkluster
- Fullt fungerande bakgrundsinläsning av mockad bygginfo för demo-deployments