chirpstack/Makefile
2022-05-02 15:14:29 +01:00

57 lines
1.8 KiB
Makefile

.PHONY: dist api
# Builds a debug / development binary.
build-debug:
docker-compose run --rm chirpstack make debug
# Builds a release binary.
build-release:
docker-compose run --rm chirpstack make release
# Build distributable binaries.
dist:
# The pull is needed as else the specified platform is not respected.
docker-compose pull chirpstack-build-amd64 && docker-compose run --rm chirpstack-build-amd64 make dist
docker-compose pull chirpstack-build-arm64 && docker-compose run --rm chirpstack-build-arm64 make dist
# Set the versions
version:
test -n "$(VERSION)"
sed -i 's/^version.*/version = "$(VERSION)"/g' ./chirpstack/Cargo.toml
sed -i 's/^version.*/version = "$(VERSION)"/g' ./backend/Cargo.toml
sed -i 's/^version.*/version = "$(VERSION)"/g' ./lrwn/Cargo.toml
sed -i 's/"version.*/"version": "$(VERSION)",/g' ./ui/package.json
sed -i 's/"version.*/"version": "$(VERSION)",/g' ./api/grpc-web/package.json
sed -i 's/"version.*/"version": "$(VERSION)",/g' ./api/js/package.json
sed -i 's/version.*/version = "$(VERSION)",/g' ./api/python/src/setup.py
sed -i 's/^version.*/version = "$(VERSION)"/g' ./api/rust/Cargo.toml
api: version
cd api && make
# Builds the UI.
build-ui:
docker-compose run --rm chirpstack-ui make build
# Enters the devshell for ChirpStack development.
devshell:
docker-compose run --rm --service-ports chirpstack bash
# Enters the devshell for ChirpStack UI development.
devshell-ui:
docker-compose run --rm --service-ports chirpstack-ui bash
# Runs the tests
test:
docker-compose run --rm chirpstack make test
docker-compose run --rm chirpstack make test-lrwn
# Starts the ChirpStack server (for testing only).
test-server: build-ui
docker-compose run --rm --service-ports chirpstack make test-server
# Update the Docker development images
update-images:
docker-compose pull chirpstack
docker-compose build chirpstack-ui