mirror of
https://github.com/neondatabase/neon.git
synced 2025-12-22 21:59:59 +00:00
## Problem We have several linters that use Node.js, but they are currently set up differently, both locally and on CI. ## Summary of changes - Add Node.js to `build-tools` image - Move `compute/package.json` -> `build-tools/package.json` and add `redocly` to it `@redocly/cli` - Unify and merge into one job `lint-openapi-spec` and `validate-compute-manifest`
59 lines
2.0 KiB
Makefile
59 lines
2.0 KiB
Makefile
jsonnet_files = $(wildcard \
|
|
etc/*.jsonnet \
|
|
etc/sql_exporter/*.libsonnet)
|
|
|
|
.PHONY: all
|
|
all: neon_collector.yml neon_collector_autoscaling.yml sql_exporter.yml sql_exporter_autoscaling.yml
|
|
|
|
neon_collector.yml: $(jsonnet_files)
|
|
JSONNET_PATH=jsonnet:etc jsonnet \
|
|
--output-file etc/$@ \
|
|
--ext-str pg_version=$(PG_VERSION) \
|
|
etc/neon_collector.jsonnet
|
|
|
|
neon_collector_autoscaling.yml: $(jsonnet_files)
|
|
JSONNET_PATH=jsonnet:etc jsonnet \
|
|
--output-file etc/$@ \
|
|
--ext-str pg_version=$(PG_VERSION) \
|
|
etc/neon_collector_autoscaling.jsonnet
|
|
|
|
sql_exporter.yml: $(jsonnet_files)
|
|
JSONNET_PATH=etc jsonnet \
|
|
--output-file etc/$@ \
|
|
--tla-str collector_name=neon_collector \
|
|
--tla-str collector_file=neon_collector.yml \
|
|
--tla-str 'connection_string=postgresql://cloud_admin@127.0.0.1:5432/postgres?sslmode=disable&application_name=sql_exporter&pgaudit.log=none' \
|
|
etc/sql_exporter.jsonnet
|
|
|
|
sql_exporter_autoscaling.yml: $(jsonnet_files)
|
|
JSONNET_PATH=etc jsonnet \
|
|
--output-file etc/$@ \
|
|
--tla-str collector_name=neon_collector_autoscaling \
|
|
--tla-str collector_file=neon_collector_autoscaling.yml \
|
|
--tla-str 'connection_string=postgresql://cloud_admin@127.0.0.1:5432/postgres?sslmode=disable&application_name=sql_exporter_autoscaling&pgaudit.log=none' \
|
|
etc/sql_exporter.jsonnet
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
$(RM) \
|
|
etc/neon_collector.yml \
|
|
etc/neon_collector_autoscaling.yml \
|
|
etc/sql_exporter.yml \
|
|
etc/sql_exporter_autoscaling.yml
|
|
|
|
.PHONY: jsonnetfmt-test
|
|
jsonnetfmt-test:
|
|
jsonnetfmt --test $(jsonnet_files)
|
|
|
|
.PHONY: jsonnetfmt-format
|
|
jsonnetfmt-format:
|
|
jsonnetfmt --in-place $(jsonnet_files)
|
|
|
|
.PHONY: manifest-schema-validation
|
|
manifest-schema-validation: ../build-tools/node_modules
|
|
npx --prefix=../build-tools/ jsonschema validate -d https://json-schema.org/draft/2020-12/schema manifest.schema.json manifest.yaml
|
|
|
|
../build-tools/node_modules: ../build-tools/package.json
|
|
cd ../build-tools && $(if $(CI),npm ci,npm install)
|
|
touch ../build-tools/node_modules
|