Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 3 additions & 33 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,56 +10,26 @@ build:
stage: build
image:
name: docker
variables:
BRANDING: villasweb
DOCKER_TAG: ${CI_COMMIT_BRANCH}-${BRANDING}
script:
- docker build --build-arg REACT_APP_BRAND=${BRANDING} --tag ${DOCKER_IMAGE}:${DOCKER_TAG} .
- docker build --build-arg REACT_APP_BRAND=${BRANDING} --tag ${DOCKER_IMAGE}:${CI_COMMIT_BRANCH} .
tags:
- docker

build.slew:
variables:
BRANDING: slew
DOCKER_TAG: ${CI_COMMIT_BRANCH}-${BRANDING}
extends: build

build.opalrt:
variables:
BRANDING: opalrt
DOCKER_TAG: ${CI_COMMIT_BRANCH}-${BRANDING}
extends: build

deploy:
stage: deploy
variables:
BRANDING: villasweb
DOCKER_TAG: ${CI_COMMIT_BRANCH}-${BRANDING}
before_script:
- docker login -u ${CI_REGISTRY_USER} -p ${CI_REGISTRY_PASSWORD} ${CI_REGISTRY}
script:
- docker push ${DOCKER_IMAGE}:${DOCKER_TAG}
- docker push ${DOCKER_IMAGE}:${CI_COMMIT_BRANCH}
tags:
- docker
dependencies:
- build

deploy.slew:
extends: deploy
variables:
BRANDING: slew
DOCKER_TAG: ${CI_COMMIT_BRANCH}-${BRANDING}

deploy.opalrt:
extends: deploy
variables:
BRANDING: opalrt
DOCKER_TAG: ${CI_COMMIT_BRANCH}-${BRANDING}

deploy.latest:
extends: deploy
variables:
DOCKER_TAG: latest
only:
refs:
- master
- master
48 changes: 29 additions & 19 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,23 +15,33 @@
# along with VILLASweb. If not, see <http://www.gnu.org/licenses/>.
# ******************************************************************************

FROM node:16.5 AS builder
FROM node:16.5 AS builder

# Create app directory
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app

# use changes to package.json to force Docker not to use the cache
# when we change our application's nodejs dependencies:
ADD package.json /usr/src/app
RUN npm install --force

# Install app dependencies
ARG REACT_APP_BRAND
COPY . /usr/src/app
# Production build, CI=false prevents warnings from being treated as errors
RUN CI=false npm run build

FROM nginx

COPY --from=builder /usr/src/app/build /usr/share/nginx/html
# Create app directory
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app

# use changes to package.json to force Docker not to use the cache
# when we change our application's nodejs dependencies:
ADD package.json /usr/src/app
RUN npm install --force

# Install app dependencies
ARG REACT_APP_BRAND
COPY . /usr/src/app
# Production build, CI=false prevents warnings from being treated as errors
RUN CI=false npm run build
WORKDIR /usr/src/app/build

RUN sed -i 's/<\/body>/<script src="\/static\/js\/injector.js"><\/script><link href="\/static\/css\/style.css" rel="stylesheet"><\/body>/g' index.html
RUN mkdir -p branding/img
ADD ./src/branding/default /usr/src/app/build/branding
ADD ./src/branding/img /usr/src/app/build/branding/img
ADD ./src/branding/injector.js /usr/src/app/build/static/js
ADD ./src/branding/style.css /usr/src/app/build/static/css

FROM nginx

COPY --from=builder /usr/src/app/build /usr/share/nginx/html
#EXPECT BRANDING VOLUME TO /usr/share/nginx/html/branding

10 changes: 4 additions & 6 deletions src/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,10 @@ import Dashboard from './pages/dashboards/dashboard';
import Account from './pages/account/account';
import './styles/app.css';
import './styles/login.css';
import branding from './branding/branding';
import Logout from './pages/login/logout';
import Infrastructure from './pages/infrastructure/infrastructure';
import { useSelector } from 'react-redux';
import { villasweb_footer } from "./branding/functions.js";

const App = () => {

Expand All @@ -54,9 +54,6 @@ const App = () => {
return (<Redirect to="/logout" />);
} else {

console.log("APP rendering app");
const pages = branding.values.pages;

return (<DndProvider backend={HTML5Backend} >
<div className="app">
<NotificationSystem />
Expand Down Expand Up @@ -106,8 +103,9 @@ const App = () => {
: '' }
</div>
</div>

{branding.getFooter()}
<footer className="app-footer" id="brand-footer">
{villasweb_footer()}
</footer>
</div>
</DndProvider>)
}
Expand Down
219 changes: 0 additions & 219 deletions src/branding/branding.js

This file was deleted.

3 changes: 3 additions & 0 deletions src/branding/default/footer.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<footer className="app-footer">
Copyright &copy; 2025 - <a href="https://www.acs.eonerc.rwth-aachen.de">Institute for Automation of Complex Power Systems</a> - <a href="https://www.rwth-aachen.de">RWTH Aachen University</a>
</footer>
Loading