mirror of
https://github.com/zalando/postgres-operator.git
synced 2026-09-30 16:12:07 +02:00
* fix: use nodejs-lts image for building frontend code Node v14 is end-of-life and should no longer be used. Commit changes Makefile to pull in latest node-lts instead. Also, use local temporary folder for storing npm generated files to workaround permission issue with old npm version, e.g. emitting these errors: ``` npm ERR! code EACCES npm ERR! syscall mkdir npm ERR! path /.npm npm ERR! errno -13 npm ERR! npm ERR! Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which has since been addressed. ``` Both changes should also fix issue https://github.com/zalando/postgres-operator/issues/2651 * fix: add frontend build step Commit https://github.com/zalando/postgres-operator/commit/d60b424d7957d715003d9e5597bd5b5d63b6e250 accidentally removed build steps that are important for building frontend. This commit restores previous behavior, but switches to nodejs-lts image for building frontend code. Should restore `app.js` presence in ghcr image, see https://github.com/zalando/postgres-operator/issues/2651.
40 lines
1.2 KiB
Makefile
40 lines
1.2 KiB
Makefile
.PHONY: clean test appjs docker push mock
|
|
|
|
IMAGE ?= registry.opensource.zalan.do/acid/postgres-operator-ui
|
|
VERSION ?= $(shell git describe --tags --always --dirty)
|
|
TAG ?= $(VERSION)
|
|
GITHEAD = $(shell git rev-parse --short HEAD)
|
|
GITURL = $(shell git config --get remote.origin.url)
|
|
GITSTATUS = $(shell git status --porcelain || echo 'no changes')
|
|
TTYFLAGS = $(shell test -t 0 && echo '-it')
|
|
|
|
ifdef CDP_PULL_REQUEST_NUMBER
|
|
CDP_TAG := -${CDP_BUILD_VERSION}
|
|
endif
|
|
|
|
default: docker
|
|
|
|
clean:
|
|
rm -fr operator_ui/static/build
|
|
|
|
test:
|
|
tox
|
|
|
|
appjs:
|
|
docker run $(TTYFLAGS) -u $$(id -u) -v $$(pwd):/workdir -w /workdir/app node:lts-alpine npm install --cache /workdir/.npm
|
|
docker run $(TTYFLAGS) -u $$(id -u) -v $$(pwd):/workdir -w /workdir/app node:lts-alpine npm run build --cache /workdir/.npm
|
|
|
|
docker: appjs
|
|
echo `(env)`
|
|
echo "Tag ${TAG}"
|
|
echo "Version ${VERSION}"
|
|
echo "CDP tag ${CDP_TAG}"
|
|
echo "git describe $(shell git describe --tags --always --dirty)"
|
|
docker build --rm -t "$(IMAGE):$(TAG)$(CDP_TAG)" -f Dockerfile .
|
|
|
|
push:
|
|
docker push "$(IMAGE):$(TAG)$(CDP_TAG)"
|
|
|
|
mock:
|
|
docker run -it -p 8081:8081 "$(IMAGE):$(TAG)" --mock
|