diff --git a/.github/workflows/compile.yml b/.github/workflows/compile.yml index 2acc9be31a..dfee6cab87 100644 --- a/.github/workflows/compile.yml +++ b/.github/workflows/compile.yml @@ -25,7 +25,7 @@ jobs: with: timeout_minutes: 30 max_attempts: 3 - command: cd App/Accounts && npm install && npm run compile && npm run dep-check + command: cd App/FeatureSet/Accounts && npm install && npm run compile && npm run dep-check compile-common: runs-on: ubuntu-latest @@ -161,7 +161,7 @@ jobs: with: timeout_minutes: 30 max_attempts: 3 - command: cd App/AdminDashboard && npm install && npm run compile && npm run dep-check + command: cd App/FeatureSet/AdminDashboard && npm install && npm run compile && npm run dep-check compile-dashboard: runs-on: ubuntu-latest @@ -179,7 +179,7 @@ jobs: with: timeout_minutes: 30 max_attempts: 3 - command: cd App/Dashboard && npm install && npm run compile && npm run dep-check + command: cd App/FeatureSet/Dashboard && npm install && npm run compile && npm run dep-check compile-e2e: @@ -251,7 +251,7 @@ jobs: with: timeout_minutes: 30 max_attempts: 3 - command: cd App/StatusPage && npm install && npm run compile && npm run dep-check + command: cd App/FeatureSet/StatusPage && npm install && npm run compile && npm run dep-check compile-test-server: runs-on: ubuntu-latest diff --git a/App/Dockerfile.tpl b/App/Dockerfile.tpl index e869b47520..66ce234e3c 100644 --- a/App/Dockerfile.tpl +++ b/App/Dockerfile.tpl @@ -56,20 +56,20 @@ COPY ./App/package*.json /usr/src/app/ RUN sed -i "s/\"version\": \".*\"/\"version\": \"$APP_VERSION\"/g" /usr/src/app/package.json RUN npm install -WORKDIR /usr/src/app/Accounts -COPY ./App/Accounts/package*.json /usr/src/app/Accounts/ +WORKDIR /usr/src/app/FeatureSet/Accounts +COPY ./App/FeatureSet/Accounts/package*.json /usr/src/app/FeatureSet/Accounts/ RUN npm install -WORKDIR /usr/src/app/Dashboard -COPY ./App/Dashboard/package*.json /usr/src/app/Dashboard/ +WORKDIR /usr/src/app/FeatureSet/Dashboard +COPY ./App/FeatureSet/Dashboard/package*.json /usr/src/app/FeatureSet/Dashboard/ RUN npm install -WORKDIR /usr/src/app/AdminDashboard -COPY ./App/AdminDashboard/package*.json /usr/src/app/AdminDashboard/ +WORKDIR /usr/src/app/FeatureSet/AdminDashboard +COPY ./App/FeatureSet/AdminDashboard/package*.json /usr/src/app/FeatureSet/AdminDashboard/ RUN npm install -WORKDIR /usr/src/app/StatusPage -COPY ./App/StatusPage/package*.json /usr/src/app/StatusPage/ +WORKDIR /usr/src/app/FeatureSet/StatusPage +COPY ./App/FeatureSet/StatusPage/package*.json /usr/src/app/FeatureSet/StatusPage/ RUN npm install WORKDIR /usr/src/app @@ -85,10 +85,10 @@ CMD [ "npm", "run", "dev" ] # Copy app source COPY ./App /usr/src/app # Copy frontend sources -COPY ./App/Accounts /usr/src/app/Accounts -COPY ./App/Dashboard /usr/src/app/Dashboard -COPY ./App/AdminDashboard /usr/src/app/AdminDashboard -COPY ./App/StatusPage /usr/src/app/StatusPage +COPY ./App/FeatureSet/Accounts /usr/src/app/FeatureSet/Accounts +COPY ./App/FeatureSet/Dashboard /usr/src/app/FeatureSet/Dashboard +COPY ./App/FeatureSet/AdminDashboard /usr/src/app/FeatureSet/AdminDashboard +COPY ./App/FeatureSet/StatusPage /usr/src/app/FeatureSet/StatusPage # Bundle frontend source RUN npm run build-frontends:prod # Bundle app source diff --git a/App/FeatureSet/Frontend/Index.ts b/App/FeatureSet/Frontend/Index.ts index 27762d4eef..f7a1cd6729 100644 --- a/App/FeatureSet/Frontend/Index.ts +++ b/App/FeatureSet/Frontend/Index.ts @@ -27,17 +27,17 @@ import { const app: ExpressApplication = Express.getExpressApp(); -const AccountsPublicPath: string = "/usr/src/app/Accounts/public"; -const AccountsViewPath: string = "/usr/src/app/Accounts/views/index.ejs"; +const AccountsPublicPath: string = "/usr/src/app/FeatureSet/Accounts/public"; +const AccountsViewPath: string = "/usr/src/app/FeatureSet/Accounts/views/index.ejs"; -const DashboardPublicPath: string = "/usr/src/app/Dashboard/public"; -const DashboardViewPath: string = "/usr/src/app/Dashboard/views/index.ejs"; +const DashboardPublicPath: string = "/usr/src/app/FeatureSet/Dashboard/public"; +const DashboardViewPath: string = "/usr/src/app/FeatureSet/Dashboard/views/index.ejs"; -const AdminPublicPath: string = "/usr/src/app/AdminDashboard/public"; -const AdminViewPath: string = "/usr/src/app/AdminDashboard/views/index.ejs"; +const AdminPublicPath: string = "/usr/src/app/FeatureSet/AdminDashboard/public"; +const AdminViewPath: string = "/usr/src/app/FeatureSet/AdminDashboard/views/index.ejs"; -const StatusPagePublicPath: string = "/usr/src/app/StatusPage/public"; -const StatusPageViewPath: string = "/usr/src/app/StatusPage/views/index.ejs"; +const StatusPagePublicPath: string = "/usr/src/app/FeatureSet/StatusPage/public"; +const StatusPageViewPath: string = "/usr/src/app/FeatureSet/StatusPage/views/index.ejs"; interface FrontendConfig { routePrefix: string; diff --git a/App/package.json b/App/package.json index 77eccf3133..da2aaf7a56 100644 --- a/App/package.json +++ b/App/package.json @@ -8,20 +8,20 @@ }, "main": "Index.ts", "scripts": { - "build-frontend:accounts": "bash ./scripts/frontend-run.sh Accounts dev-build", - "build-frontend:dashboard": "bash ./scripts/frontend-run.sh Dashboard dev-build", - "build-frontend:admin-dashboard": "bash ./scripts/frontend-run.sh AdminDashboard dev-build", - "build-frontend:status-page": "bash ./scripts/frontend-run.sh StatusPage dev-build", + "build-frontend:accounts": "bash ./scripts/frontend-run.sh FeatureSet/Accounts dev-build", + "build-frontend:dashboard": "bash ./scripts/frontend-run.sh FeatureSet/Dashboard dev-build", + "build-frontend:admin-dashboard": "bash ./scripts/frontend-run.sh FeatureSet/AdminDashboard dev-build", + "build-frontend:status-page": "bash ./scripts/frontend-run.sh FeatureSet/StatusPage dev-build", "build-frontends": "npm run build-frontend:accounts && npm run build-frontend:dashboard && npm run build-frontend:admin-dashboard && npm run build-frontend:status-page", - "build-frontend:accounts:prod": "bash ./scripts/frontend-run.sh Accounts build", - "build-frontend:dashboard:prod": "bash ./scripts/frontend-run.sh Dashboard build", - "build-frontend:admin-dashboard:prod": "bash ./scripts/frontend-run.sh AdminDashboard build", - "build-frontend:status-page:prod": "bash ./scripts/frontend-run.sh StatusPage build", + "build-frontend:accounts:prod": "bash ./scripts/frontend-run.sh FeatureSet/Accounts build", + "build-frontend:dashboard:prod": "bash ./scripts/frontend-run.sh FeatureSet/Dashboard build", + "build-frontend:admin-dashboard:prod": "bash ./scripts/frontend-run.sh FeatureSet/AdminDashboard build", + "build-frontend:status-page:prod": "bash ./scripts/frontend-run.sh FeatureSet/StatusPage build", "build-frontends:prod": "npm run build-frontend:accounts:prod && npm run build-frontend:dashboard:prod && npm run build-frontend:admin-dashboard:prod && npm run build-frontend:status-page:prod", - "watch-frontend:accounts": "bash ./scripts/frontend-run.sh Accounts dev-build --watch", - "watch-frontend:dashboard": "bash ./scripts/frontend-run.sh Dashboard dev-build --watch", - "watch-frontend:admin-dashboard": "bash ./scripts/frontend-run.sh AdminDashboard dev-build --watch", - "watch-frontend:status-page": "bash ./scripts/frontend-run.sh StatusPage dev-build --watch", + "watch-frontend:accounts": "bash ./scripts/frontend-run.sh FeatureSet/Accounts dev-build --watch", + "watch-frontend:dashboard": "bash ./scripts/frontend-run.sh FeatureSet/Dashboard dev-build --watch", + "watch-frontend:admin-dashboard": "bash ./scripts/frontend-run.sh FeatureSet/AdminDashboard dev-build --watch", + "watch-frontend:status-page": "bash ./scripts/frontend-run.sh FeatureSet/StatusPage dev-build --watch", "dev:api": "npx nodemon", "start": "export NODE_OPTIONS='--max-old-space-size=8096' && node --require ts-node/register Index.ts", "compile": "tsc", diff --git a/App/tsconfig.json b/App/tsconfig.json index 6a2af8887b..cd6f5938d6 100644 --- a/App/tsconfig.json +++ b/App/tsconfig.json @@ -110,9 +110,9 @@ "resolveJsonModule": true }, "exclude": [ - "Accounts", - "Dashboard", - "AdminDashboard", - "StatusPage" + "FeatureSet/Accounts", + "FeatureSet/Dashboard", + "FeatureSet/AdminDashboard", + "FeatureSet/StatusPage" ] } diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml index e2c32a9287..26884a5f53 100644 --- a/docker-compose.dev.yml +++ b/docker-compose.dev.yml @@ -134,17 +134,17 @@ services: app: volumes: - ./App:/usr/src/app:cached - - ./App/Accounts:/usr/src/app/Accounts:cached - - ./App/Dashboard:/usr/src/app/Dashboard:cached - - ./App/AdminDashboard:/usr/src/app/AdminDashboard:cached - - ./App/StatusPage:/usr/src/app/StatusPage:cached + - ./App/FeatureSet/Accounts:/usr/src/app/FeatureSet/Accounts:cached + - ./App/FeatureSet/Dashboard:/usr/src/app/FeatureSet/Dashboard:cached + - ./App/FeatureSet/AdminDashboard:/usr/src/app/FeatureSet/AdminDashboard:cached + - ./App/FeatureSet/StatusPage:/usr/src/app/FeatureSet/StatusPage:cached # Use node modules of the container and not host system. # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder - /usr/src/app/node_modules/ - - /usr/src/app/Accounts/node_modules/ - - /usr/src/app/Dashboard/node_modules/ - - /usr/src/app/AdminDashboard/node_modules/ - - /usr/src/app/StatusPage/node_modules/ + - /usr/src/app/FeatureSet/Accounts/node_modules/ + - /usr/src/app/FeatureSet/Dashboard/node_modules/ + - /usr/src/app/FeatureSet/AdminDashboard/node_modules/ + - /usr/src/app/FeatureSet/StatusPage/node_modules/ - ./Common:/usr/src/Common:cached - /usr/src/Common/node_modules/ extends: