diff --git a/services/chat/Makefile b/services/chat/Makefile index 3c226aba6d..cbe59db223 100644 --- a/services/chat/Makefile +++ b/services/chat/Makefile @@ -24,7 +24,6 @@ DOCKER_COMPOSE_TEST_UNIT = \ clean: -docker rmi ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) - -docker rmi gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -docker rmi us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -$(DOCKER_COMPOSE_TEST_UNIT) down --rmi local -$(DOCKER_COMPOSE_TEST_ACCEPTANCE) down --rmi local @@ -35,24 +34,35 @@ MONOREPO=$(shell cd ../../ && pwd) # Eslint and prettier (plus some configs) are on the root. RUN_LINTING = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(HERE) node:18.20.2 npm run --silent +RUN_LINTING_CI = docker run --rm --volume $(MONOREPO)/.editorconfig:/overleaf/.editorconfig --volume $(MONOREPO)/.eslintignore:/overleaf/.eslintignore --volume $(MONOREPO)/.eslintrc:/overleaf/.eslintrc --volume $(MONOREPO)/.prettierignore:/overleaf/.prettierignore --volume $(MONOREPO)/.prettierrc:/overleaf/.prettierrc --volume $(MONOREPO)/tsconfig.backend.json:/overleaf/tsconfig.backend.json ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) npm run --silent + # Same but from the top of the monorepo RUN_LINTING_MONOREPO = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(MONOREPO) node:18.20.2 npm run --silent format: $(RUN_LINTING) format +format_ci: + $(RUN_LINTING_CI) format + format_fix: $(RUN_LINTING) format:fix lint: $(RUN_LINTING) lint +lint_ci: + $(RUN_LINTING_CI) lint + lint_fix: $(RUN_LINTING) lint:fix typecheck: $(RUN_LINTING) types:check +typecheck_ci: + $(RUN_LINTING_CI) types:check + test: format lint typecheck test_unit test_acceptance test_unit: @@ -103,9 +113,14 @@ benchmarks: $(DOCKER_COMPOSE_TEST_ACCEPTANCE) run --rm test_acceptance npm run benchmarks build: - docker build --pull --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + docker build \ + --pull \ + --build-arg BUILDKIT_INLINE_CACHE=1 \ + --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main \ --file Dockerfile \ ../.. @@ -121,6 +136,7 @@ publish: format format_fix \ lint lint_fix \ build_types typecheck \ + lint_ci format_ci typecheck_ci \ test test_clean test_unit test_unit_clean \ test_acceptance test_acceptance_debug test_acceptance_pre_run \ test_acceptance_run test_acceptance_run_debug test_acceptance_clean \ diff --git a/services/chat/buildscript.txt b/services/chat/buildscript.txt index adea034bc3..8470e45e93 100644 --- a/services/chat/buildscript.txt +++ b/services/chat/buildscript.txt @@ -1,6 +1,6 @@ chat --dependencies=mongo ---docker-repos=gcr.io/overleaf-ops,us-east1-docker.pkg.dev/overleaf-ops/ol-docker +--docker-repos=us-east1-docker.pkg.dev/overleaf-ops/ol-docker --env-add= --env-pass-through= --esmock-loader=False diff --git a/services/clsi/Makefile b/services/clsi/Makefile index c2c4fb7017..069c3c9426 100644 --- a/services/clsi/Makefile +++ b/services/clsi/Makefile @@ -35,24 +35,35 @@ MONOREPO=$(shell cd ../../ && pwd) # Eslint and prettier (plus some configs) are on the root. RUN_LINTING = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(HERE) node:18.20.2 npm run --silent +RUN_LINTING_CI = docker run --rm --volume $(MONOREPO)/.editorconfig:/overleaf/.editorconfig --volume $(MONOREPO)/.eslintignore:/overleaf/.eslintignore --volume $(MONOREPO)/.eslintrc:/overleaf/.eslintrc --volume $(MONOREPO)/.prettierignore:/overleaf/.prettierignore --volume $(MONOREPO)/.prettierrc:/overleaf/.prettierrc --volume $(MONOREPO)/tsconfig.backend.json:/overleaf/tsconfig.backend.json ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) npm run --silent + # Same but from the top of the monorepo RUN_LINTING_MONOREPO = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(MONOREPO) node:18.20.2 npm run --silent format: $(RUN_LINTING) format +format_ci: + $(RUN_LINTING_CI) format + format_fix: $(RUN_LINTING) format:fix lint: $(RUN_LINTING) lint +lint_ci: + $(RUN_LINTING_CI) lint + lint_fix: $(RUN_LINTING) lint:fix typecheck: $(RUN_LINTING) types:check +typecheck_ci: + $(RUN_LINTING_CI) types:check + test: format lint typecheck test_unit test_acceptance test_unit: @@ -96,30 +107,15 @@ benchmarks: $(DOCKER_COMPOSE_TEST_ACCEPTANCE) run --rm test_acceptance npm run benchmarks build: - docker pull gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - || docker pull gcr.io/overleaf-ops/$(PROJECT_NAME):main-deps \ - || echo 'nothing cached for gcr.io/overleaf-ops' - docker pull us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - || docker pull us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main-deps \ - || echo 'nothing cached for us-east1-docker.pkg.dev/overleaf-ops/ol-docker' docker build \ - --pull \ + --pull \ --build-arg BUILDKIT_INLINE_CACHE=1 \ - --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - --cache-from gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - --cache-from gcr.io/overleaf-ops/$(PROJECT_NAME):main-deps \ - --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main-deps \ - --target base \ - --file Dockerfile \ - ../.. - - docker build --pull --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --cache-from gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ + --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from gcr.io/overleaf-ops/$(PROJECT_NAME):main \ --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ --file Dockerfile \ ../.. @@ -135,6 +131,7 @@ publish: format format_fix \ lint lint_fix \ build_types typecheck \ + lint_ci format_ci typecheck_ci \ test test_clean test_unit test_unit_clean \ test_acceptance test_acceptance_debug test_acceptance_pre_run \ test_acceptance_run test_acceptance_run_debug test_acceptance_clean \ diff --git a/services/clsi/buildscript.txt b/services/clsi/buildscript.txt index f3f308fe7b..52113b47e0 100644 --- a/services/clsi/buildscript.txt +++ b/services/clsi/buildscript.txt @@ -8,3 +8,4 @@ clsi --node-version=18.20.2 --public-repo=True --script-version=4.5.0 +--use-large-ci-runner=True diff --git a/services/contacts/Makefile b/services/contacts/Makefile index da64fc937b..1f2b7a10fb 100644 --- a/services/contacts/Makefile +++ b/services/contacts/Makefile @@ -24,7 +24,6 @@ DOCKER_COMPOSE_TEST_UNIT = \ clean: -docker rmi ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) - -docker rmi gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -docker rmi us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -$(DOCKER_COMPOSE_TEST_UNIT) down --rmi local -$(DOCKER_COMPOSE_TEST_ACCEPTANCE) down --rmi local @@ -35,24 +34,35 @@ MONOREPO=$(shell cd ../../ && pwd) # Eslint and prettier (plus some configs) are on the root. RUN_LINTING = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(HERE) node:18.20.2 npm run --silent +RUN_LINTING_CI = docker run --rm --volume $(MONOREPO)/.editorconfig:/overleaf/.editorconfig --volume $(MONOREPO)/.eslintignore:/overleaf/.eslintignore --volume $(MONOREPO)/.eslintrc:/overleaf/.eslintrc --volume $(MONOREPO)/.prettierignore:/overleaf/.prettierignore --volume $(MONOREPO)/.prettierrc:/overleaf/.prettierrc --volume $(MONOREPO)/tsconfig.backend.json:/overleaf/tsconfig.backend.json ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) npm run --silent + # Same but from the top of the monorepo RUN_LINTING_MONOREPO = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(MONOREPO) node:18.20.2 npm run --silent format: $(RUN_LINTING) format +format_ci: + $(RUN_LINTING_CI) format + format_fix: $(RUN_LINTING) format:fix lint: $(RUN_LINTING) lint +lint_ci: + $(RUN_LINTING_CI) lint + lint_fix: $(RUN_LINTING) lint:fix typecheck: $(RUN_LINTING) types:check +typecheck_ci: + $(RUN_LINTING_CI) types:check + test: format lint typecheck test_unit test_acceptance test_unit: @@ -103,9 +113,14 @@ benchmarks: $(DOCKER_COMPOSE_TEST_ACCEPTANCE) run --rm test_acceptance npm run benchmarks build: - docker build --pull --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + docker build \ + --pull \ + --build-arg BUILDKIT_INLINE_CACHE=1 \ + --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main \ --file Dockerfile \ ../.. @@ -121,6 +136,7 @@ publish: format format_fix \ lint lint_fix \ build_types typecheck \ + lint_ci format_ci typecheck_ci \ test test_clean test_unit test_unit_clean \ test_acceptance test_acceptance_debug test_acceptance_pre_run \ test_acceptance_run test_acceptance_run_debug test_acceptance_clean \ diff --git a/services/contacts/buildscript.txt b/services/contacts/buildscript.txt index 2593253b35..cfbc56040e 100644 --- a/services/contacts/buildscript.txt +++ b/services/contacts/buildscript.txt @@ -1,6 +1,6 @@ contacts --dependencies=mongo ---docker-repos=gcr.io/overleaf-ops,us-east1-docker.pkg.dev/overleaf-ops/ol-docker +--docker-repos=us-east1-docker.pkg.dev/overleaf-ops/ol-docker --env-add= --env-pass-through= --esmock-loader=True diff --git a/services/docstore/Makefile b/services/docstore/Makefile index a7e62bbca4..25068f95e6 100644 --- a/services/docstore/Makefile +++ b/services/docstore/Makefile @@ -24,7 +24,6 @@ DOCKER_COMPOSE_TEST_UNIT = \ clean: -docker rmi ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) - -docker rmi gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -docker rmi us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -$(DOCKER_COMPOSE_TEST_UNIT) down --rmi local -$(DOCKER_COMPOSE_TEST_ACCEPTANCE) down --rmi local @@ -35,24 +34,35 @@ MONOREPO=$(shell cd ../../ && pwd) # Eslint and prettier (plus some configs) are on the root. RUN_LINTING = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(HERE) node:18.20.2 npm run --silent +RUN_LINTING_CI = docker run --rm --volume $(MONOREPO)/.editorconfig:/overleaf/.editorconfig --volume $(MONOREPO)/.eslintignore:/overleaf/.eslintignore --volume $(MONOREPO)/.eslintrc:/overleaf/.eslintrc --volume $(MONOREPO)/.prettierignore:/overleaf/.prettierignore --volume $(MONOREPO)/.prettierrc:/overleaf/.prettierrc --volume $(MONOREPO)/tsconfig.backend.json:/overleaf/tsconfig.backend.json ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) npm run --silent + # Same but from the top of the monorepo RUN_LINTING_MONOREPO = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(MONOREPO) node:18.20.2 npm run --silent format: $(RUN_LINTING) format +format_ci: + $(RUN_LINTING_CI) format + format_fix: $(RUN_LINTING) format:fix lint: $(RUN_LINTING) lint +lint_ci: + $(RUN_LINTING_CI) lint + lint_fix: $(RUN_LINTING) lint:fix typecheck: $(RUN_LINTING) types:check +typecheck_ci: + $(RUN_LINTING_CI) types:check + test: format lint typecheck test_unit test_acceptance test_unit: @@ -103,9 +113,14 @@ benchmarks: $(DOCKER_COMPOSE_TEST_ACCEPTANCE) run --rm test_acceptance npm run benchmarks build: - docker build --pull --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + docker build \ + --pull \ + --build-arg BUILDKIT_INLINE_CACHE=1 \ + --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main \ --file Dockerfile \ ../.. @@ -121,6 +136,7 @@ publish: format format_fix \ lint lint_fix \ build_types typecheck \ + lint_ci format_ci typecheck_ci \ test test_clean test_unit test_unit_clean \ test_acceptance test_acceptance_debug test_acceptance_pre_run \ test_acceptance_run test_acceptance_run_debug test_acceptance_clean \ diff --git a/services/docstore/buildscript.txt b/services/docstore/buildscript.txt index e8c0614fe0..be2a937cd7 100644 --- a/services/docstore/buildscript.txt +++ b/services/docstore/buildscript.txt @@ -1,6 +1,6 @@ docstore --dependencies=mongo,gcs ---docker-repos=gcr.io/overleaf-ops,us-east1-docker.pkg.dev/overleaf-ops/ol-docker +--docker-repos=us-east1-docker.pkg.dev/overleaf-ops/ol-docker --env-add= --env-pass-through= --esmock-loader=False diff --git a/services/document-updater/Makefile b/services/document-updater/Makefile index f1fd635653..de0cf0eabe 100644 --- a/services/document-updater/Makefile +++ b/services/document-updater/Makefile @@ -24,7 +24,6 @@ DOCKER_COMPOSE_TEST_UNIT = \ clean: -docker rmi ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) - -docker rmi gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -docker rmi us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -$(DOCKER_COMPOSE_TEST_UNIT) down --rmi local -$(DOCKER_COMPOSE_TEST_ACCEPTANCE) down --rmi local @@ -35,24 +34,35 @@ MONOREPO=$(shell cd ../../ && pwd) # Eslint and prettier (plus some configs) are on the root. RUN_LINTING = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(HERE) node:18.20.2 npm run --silent +RUN_LINTING_CI = docker run --rm --volume $(MONOREPO)/.editorconfig:/overleaf/.editorconfig --volume $(MONOREPO)/.eslintignore:/overleaf/.eslintignore --volume $(MONOREPO)/.eslintrc:/overleaf/.eslintrc --volume $(MONOREPO)/.prettierignore:/overleaf/.prettierignore --volume $(MONOREPO)/.prettierrc:/overleaf/.prettierrc --volume $(MONOREPO)/tsconfig.backend.json:/overleaf/tsconfig.backend.json ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) npm run --silent + # Same but from the top of the monorepo RUN_LINTING_MONOREPO = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(MONOREPO) node:18.20.2 npm run --silent format: $(RUN_LINTING) format +format_ci: + $(RUN_LINTING_CI) format + format_fix: $(RUN_LINTING) format:fix lint: $(RUN_LINTING) lint +lint_ci: + $(RUN_LINTING_CI) lint + lint_fix: $(RUN_LINTING) lint:fix typecheck: $(RUN_LINTING) types:check +typecheck_ci: + $(RUN_LINTING_CI) types:check + test: format lint typecheck test_unit test_acceptance test_unit: @@ -103,9 +113,14 @@ benchmarks: $(DOCKER_COMPOSE_TEST_ACCEPTANCE) run --rm test_acceptance npm run benchmarks build: - docker build --pull --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + docker build \ + --pull \ + --build-arg BUILDKIT_INLINE_CACHE=1 \ + --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main \ --file Dockerfile \ ../.. @@ -121,6 +136,7 @@ publish: format format_fix \ lint lint_fix \ build_types typecheck \ + lint_ci format_ci typecheck_ci \ test test_clean test_unit test_unit_clean \ test_acceptance test_acceptance_debug test_acceptance_pre_run \ test_acceptance_run test_acceptance_run_debug test_acceptance_clean \ diff --git a/services/document-updater/buildscript.txt b/services/document-updater/buildscript.txt index e9668141d9..3221114171 100644 --- a/services/document-updater/buildscript.txt +++ b/services/document-updater/buildscript.txt @@ -1,6 +1,6 @@ document-updater --dependencies=mongo,redis ---docker-repos=gcr.io/overleaf-ops,us-east1-docker.pkg.dev/overleaf-ops/ol-docker +--docker-repos=us-east1-docker.pkg.dev/overleaf-ops/ol-docker --env-add= --env-pass-through= --esmock-loader=False diff --git a/services/filestore/Makefile b/services/filestore/Makefile index a19cf67af4..941f989d64 100644 --- a/services/filestore/Makefile +++ b/services/filestore/Makefile @@ -24,7 +24,6 @@ DOCKER_COMPOSE_TEST_UNIT = \ clean: -docker rmi ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) - -docker rmi gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -docker rmi us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -$(DOCKER_COMPOSE_TEST_UNIT) down --rmi local -$(DOCKER_COMPOSE_TEST_ACCEPTANCE) down --rmi local @@ -35,24 +34,35 @@ MONOREPO=$(shell cd ../../ && pwd) # Eslint and prettier (plus some configs) are on the root. RUN_LINTING = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(HERE) node:18.20.2 npm run --silent +RUN_LINTING_CI = docker run --rm --volume $(MONOREPO)/.editorconfig:/overleaf/.editorconfig --volume $(MONOREPO)/.eslintignore:/overleaf/.eslintignore --volume $(MONOREPO)/.eslintrc:/overleaf/.eslintrc --volume $(MONOREPO)/.prettierignore:/overleaf/.prettierignore --volume $(MONOREPO)/.prettierrc:/overleaf/.prettierrc --volume $(MONOREPO)/tsconfig.backend.json:/overleaf/tsconfig.backend.json ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) npm run --silent + # Same but from the top of the monorepo RUN_LINTING_MONOREPO = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(MONOREPO) node:18.20.2 npm run --silent format: $(RUN_LINTING) format +format_ci: + $(RUN_LINTING_CI) format + format_fix: $(RUN_LINTING) format:fix lint: $(RUN_LINTING) lint +lint_ci: + $(RUN_LINTING_CI) lint + lint_fix: $(RUN_LINTING) lint:fix typecheck: $(RUN_LINTING) types:check +typecheck_ci: + $(RUN_LINTING_CI) types:check + test: format lint typecheck test_unit test_acceptance test_unit: @@ -96,30 +106,14 @@ benchmarks: $(DOCKER_COMPOSE_TEST_ACCEPTANCE) run --rm test_acceptance npm run benchmarks build: - docker pull gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - || docker pull gcr.io/overleaf-ops/$(PROJECT_NAME):main-deps \ - || echo 'nothing cached for gcr.io/overleaf-ops' - docker pull us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - || docker pull us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main-deps \ - || echo 'nothing cached for us-east1-docker.pkg.dev/overleaf-ops/ol-docker' docker build \ - --pull \ + --pull \ --build-arg BUILDKIT_INLINE_CACHE=1 \ - --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - --cache-from gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - --cache-from gcr.io/overleaf-ops/$(PROJECT_NAME):main-deps \ - --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main-deps \ - --target base \ - --file Dockerfile \ - ../.. - - docker build --pull --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --cache-from gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ + --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ + --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main \ --file Dockerfile \ ../.. @@ -135,6 +129,7 @@ publish: format format_fix \ lint lint_fix \ build_types typecheck \ + lint_ci format_ci typecheck_ci \ test test_clean test_unit test_unit_clean \ test_acceptance test_acceptance_debug test_acceptance_pre_run \ test_acceptance_run test_acceptance_run_debug test_acceptance_clean \ diff --git a/services/filestore/buildscript.txt b/services/filestore/buildscript.txt index e9dda3ed60..147e8b4a46 100644 --- a/services/filestore/buildscript.txt +++ b/services/filestore/buildscript.txt @@ -1,7 +1,7 @@ filestore --data-dirs=uploads,user_files,template_files --dependencies=s3,gcs ---docker-repos=gcr.io/overleaf-ops,us-east1-docker.pkg.dev/overleaf-ops/ol-docker +--docker-repos=us-east1-docker.pkg.dev/overleaf-ops/ol-docker --env-add=ENABLE_CONVERSIONS="true",USE_PROM_METRICS="true",AWS_S3_USER_FILES_BUCKET_NAME=fake_user_files,AWS_S3_TEMPLATE_FILES_BUCKET_NAME=fake_template_files,GCS_USER_FILES_BUCKET_NAME=fake_userfiles,GCS_TEMPLATE_FILES_BUCKET_NAME=fake_templatefiles --env-pass-through= --esmock-loader=False @@ -9,3 +9,4 @@ filestore --public-repo=True --script-version=4.5.0 --test-acceptance-shards=SHARD_01_,SHARD_02_,SHARD_03_ +--use-large-ci-runner=True diff --git a/services/history-v1/Makefile b/services/history-v1/Makefile index 8760e1f481..6ba72740b0 100644 --- a/services/history-v1/Makefile +++ b/services/history-v1/Makefile @@ -24,7 +24,6 @@ DOCKER_COMPOSE_TEST_UNIT = \ clean: -docker rmi ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) - -docker rmi gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -docker rmi us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -$(DOCKER_COMPOSE_TEST_UNIT) down --rmi local -$(DOCKER_COMPOSE_TEST_ACCEPTANCE) down --rmi local @@ -35,24 +34,35 @@ MONOREPO=$(shell cd ../../ && pwd) # Eslint and prettier (plus some configs) are on the root. RUN_LINTING = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(HERE) node:18.20.2 npm run --silent +RUN_LINTING_CI = docker run --rm --volume $(MONOREPO)/.editorconfig:/overleaf/.editorconfig --volume $(MONOREPO)/.eslintignore:/overleaf/.eslintignore --volume $(MONOREPO)/.eslintrc:/overleaf/.eslintrc --volume $(MONOREPO)/.prettierignore:/overleaf/.prettierignore --volume $(MONOREPO)/.prettierrc:/overleaf/.prettierrc --volume $(MONOREPO)/tsconfig.backend.json:/overleaf/tsconfig.backend.json ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) npm run --silent + # Same but from the top of the monorepo RUN_LINTING_MONOREPO = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(MONOREPO) node:18.20.2 npm run --silent format: $(RUN_LINTING) format +format_ci: + $(RUN_LINTING_CI) format + format_fix: $(RUN_LINTING) format:fix lint: $(RUN_LINTING) lint +lint_ci: + $(RUN_LINTING_CI) lint + lint_fix: $(RUN_LINTING) lint:fix typecheck: $(RUN_LINTING) types:check +typecheck_ci: + $(RUN_LINTING_CI) types:check + test: format lint typecheck test_unit test_acceptance test_unit: @@ -103,9 +113,14 @@ benchmarks: $(DOCKER_COMPOSE_TEST_ACCEPTANCE) run --rm test_acceptance npm run benchmarks build: - docker build --pull --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + docker build \ + --pull \ + --build-arg BUILDKIT_INLINE_CACHE=1 \ + --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main \ --file Dockerfile \ ../.. @@ -121,6 +136,7 @@ publish: format format_fix \ lint lint_fix \ build_types typecheck \ + lint_ci format_ci typecheck_ci \ test test_clean test_unit test_unit_clean \ test_acceptance test_acceptance_debug test_acceptance_pre_run \ test_acceptance_run test_acceptance_run_debug test_acceptance_clean \ diff --git a/services/history-v1/buildscript.txt b/services/history-v1/buildscript.txt index 4303b9f845..04430a155f 100644 --- a/services/history-v1/buildscript.txt +++ b/services/history-v1/buildscript.txt @@ -1,6 +1,6 @@ history-v1 --dependencies=postgres,gcs,mongo ---docker-repos=gcr.io/overleaf-ops,us-east1-docker.pkg.dev/overleaf-ops/ol-docker +--docker-repos=us-east1-docker.pkg.dev/overleaf-ops/ol-docker --env-add= --env-pass-through= --esmock-loader=False diff --git a/services/notifications/Makefile b/services/notifications/Makefile index afd7d6991a..8d97939847 100644 --- a/services/notifications/Makefile +++ b/services/notifications/Makefile @@ -24,7 +24,6 @@ DOCKER_COMPOSE_TEST_UNIT = \ clean: -docker rmi ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) - -docker rmi gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -docker rmi us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -$(DOCKER_COMPOSE_TEST_UNIT) down --rmi local -$(DOCKER_COMPOSE_TEST_ACCEPTANCE) down --rmi local @@ -35,24 +34,35 @@ MONOREPO=$(shell cd ../../ && pwd) # Eslint and prettier (plus some configs) are on the root. RUN_LINTING = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(HERE) node:18.20.2 npm run --silent +RUN_LINTING_CI = docker run --rm --volume $(MONOREPO)/.editorconfig:/overleaf/.editorconfig --volume $(MONOREPO)/.eslintignore:/overleaf/.eslintignore --volume $(MONOREPO)/.eslintrc:/overleaf/.eslintrc --volume $(MONOREPO)/.prettierignore:/overleaf/.prettierignore --volume $(MONOREPO)/.prettierrc:/overleaf/.prettierrc --volume $(MONOREPO)/tsconfig.backend.json:/overleaf/tsconfig.backend.json ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) npm run --silent + # Same but from the top of the monorepo RUN_LINTING_MONOREPO = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(MONOREPO) node:18.20.2 npm run --silent format: $(RUN_LINTING) format +format_ci: + $(RUN_LINTING_CI) format + format_fix: $(RUN_LINTING) format:fix lint: $(RUN_LINTING) lint +lint_ci: + $(RUN_LINTING_CI) lint + lint_fix: $(RUN_LINTING) lint:fix typecheck: $(RUN_LINTING) types:check +typecheck_ci: + $(RUN_LINTING_CI) types:check + test: format lint typecheck test_unit test_acceptance test_unit: @@ -103,9 +113,14 @@ benchmarks: $(DOCKER_COMPOSE_TEST_ACCEPTANCE) run --rm test_acceptance npm run benchmarks build: - docker build --pull --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + docker build \ + --pull \ + --build-arg BUILDKIT_INLINE_CACHE=1 \ + --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main \ --file Dockerfile \ ../.. @@ -121,6 +136,7 @@ publish: format format_fix \ lint lint_fix \ build_types typecheck \ + lint_ci format_ci typecheck_ci \ test test_clean test_unit test_unit_clean \ test_acceptance test_acceptance_debug test_acceptance_pre_run \ test_acceptance_run test_acceptance_run_debug test_acceptance_clean \ diff --git a/services/notifications/buildscript.txt b/services/notifications/buildscript.txt index 97ca9159ad..7d91b888df 100644 --- a/services/notifications/buildscript.txt +++ b/services/notifications/buildscript.txt @@ -1,6 +1,6 @@ notifications --dependencies=mongo ---docker-repos=gcr.io/overleaf-ops,us-east1-docker.pkg.dev/overleaf-ops/ol-docker +--docker-repos=us-east1-docker.pkg.dev/overleaf-ops/ol-docker --env-add= --env-pass-through= --esmock-loader=False diff --git a/services/project-history/Makefile b/services/project-history/Makefile index 935b8500ed..860d0cb5fc 100644 --- a/services/project-history/Makefile +++ b/services/project-history/Makefile @@ -24,7 +24,6 @@ DOCKER_COMPOSE_TEST_UNIT = \ clean: -docker rmi ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) - -docker rmi gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -docker rmi us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -$(DOCKER_COMPOSE_TEST_UNIT) down --rmi local -$(DOCKER_COMPOSE_TEST_ACCEPTANCE) down --rmi local @@ -35,24 +34,35 @@ MONOREPO=$(shell cd ../../ && pwd) # Eslint and prettier (plus some configs) are on the root. RUN_LINTING = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(HERE) node:18.20.2 npm run --silent +RUN_LINTING_CI = docker run --rm --volume $(MONOREPO)/.editorconfig:/overleaf/.editorconfig --volume $(MONOREPO)/.eslintignore:/overleaf/.eslintignore --volume $(MONOREPO)/.eslintrc:/overleaf/.eslintrc --volume $(MONOREPO)/.prettierignore:/overleaf/.prettierignore --volume $(MONOREPO)/.prettierrc:/overleaf/.prettierrc --volume $(MONOREPO)/tsconfig.backend.json:/overleaf/tsconfig.backend.json --volume $(MONOREPO)/services/document-updater/app/js/types.ts:/overleaf/services/document-updater/app/js/types.ts ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) npm run --silent + # Same but from the top of the monorepo RUN_LINTING_MONOREPO = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(MONOREPO) node:18.20.2 npm run --silent format: $(RUN_LINTING) format +format_ci: + $(RUN_LINTING_CI) format + format_fix: $(RUN_LINTING) format:fix lint: $(RUN_LINTING) lint +lint_ci: + $(RUN_LINTING_CI) lint + lint_fix: $(RUN_LINTING) lint:fix typecheck: $(RUN_LINTING) types:check +typecheck_ci: + $(RUN_LINTING_CI) types:check + test: format lint typecheck test_unit test_acceptance test_unit: @@ -103,9 +113,14 @@ benchmarks: $(DOCKER_COMPOSE_TEST_ACCEPTANCE) run --rm test_acceptance npm run benchmarks build: - docker build --pull --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + docker build \ + --pull \ + --build-arg BUILDKIT_INLINE_CACHE=1 \ + --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main \ --file Dockerfile \ ../.. @@ -121,6 +136,7 @@ publish: format format_fix \ lint lint_fix \ build_types typecheck \ + lint_ci format_ci typecheck_ci \ test test_clean test_unit test_unit_clean \ test_acceptance test_acceptance_debug test_acceptance_pre_run \ test_acceptance_run test_acceptance_run_debug test_acceptance_clean \ diff --git a/services/project-history/buildscript.txt b/services/project-history/buildscript.txt index 375c608b53..021b97ebfc 100644 --- a/services/project-history/buildscript.txt +++ b/services/project-history/buildscript.txt @@ -1,6 +1,6 @@ project-history --dependencies=mongo,redis ---docker-repos=gcr.io/overleaf-ops,us-east1-docker.pkg.dev/overleaf-ops/ol-docker +--docker-repos=us-east1-docker.pkg.dev/overleaf-ops/ol-docker --env-add= --env-pass-through= --esmock-loader=True diff --git a/services/real-time/Makefile b/services/real-time/Makefile index c459d04f58..bf428cb63b 100644 --- a/services/real-time/Makefile +++ b/services/real-time/Makefile @@ -24,7 +24,6 @@ DOCKER_COMPOSE_TEST_UNIT = \ clean: -docker rmi ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) - -docker rmi gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -docker rmi us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -$(DOCKER_COMPOSE_TEST_UNIT) down --rmi local -$(DOCKER_COMPOSE_TEST_ACCEPTANCE) down --rmi local @@ -35,24 +34,35 @@ MONOREPO=$(shell cd ../../ && pwd) # Eslint and prettier (plus some configs) are on the root. RUN_LINTING = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(HERE) node:18.20.2 npm run --silent +RUN_LINTING_CI = docker run --rm --volume $(MONOREPO)/.editorconfig:/overleaf/.editorconfig --volume $(MONOREPO)/.eslintignore:/overleaf/.eslintignore --volume $(MONOREPO)/.eslintrc:/overleaf/.eslintrc --volume $(MONOREPO)/.prettierignore:/overleaf/.prettierignore --volume $(MONOREPO)/.prettierrc:/overleaf/.prettierrc --volume $(MONOREPO)/tsconfig.backend.json:/overleaf/tsconfig.backend.json ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) npm run --silent + # Same but from the top of the monorepo RUN_LINTING_MONOREPO = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(MONOREPO) node:18.20.2 npm run --silent format: $(RUN_LINTING) format +format_ci: + $(RUN_LINTING_CI) format + format_fix: $(RUN_LINTING) format:fix lint: $(RUN_LINTING) lint +lint_ci: + $(RUN_LINTING_CI) lint + lint_fix: $(RUN_LINTING) lint:fix typecheck: $(RUN_LINTING) types:check +typecheck_ci: + $(RUN_LINTING_CI) types:check + test: format lint typecheck test_unit test_acceptance test_unit: @@ -96,9 +106,14 @@ benchmarks: $(DOCKER_COMPOSE_TEST_ACCEPTANCE) run --rm test_acceptance npm run benchmarks build: - docker build --pull --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + docker build \ + --pull \ + --build-arg BUILDKIT_INLINE_CACHE=1 \ + --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ + --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main \ --file Dockerfile \ ../.. @@ -114,6 +129,7 @@ publish: format format_fix \ lint lint_fix \ build_types typecheck \ + lint_ci format_ci typecheck_ci \ test test_clean test_unit test_unit_clean \ test_acceptance test_acceptance_debug test_acceptance_pre_run \ test_acceptance_run test_acceptance_run_debug test_acceptance_clean \ diff --git a/services/real-time/buildscript.txt b/services/real-time/buildscript.txt index 37340b8858..c6efab39f8 100644 --- a/services/real-time/buildscript.txt +++ b/services/real-time/buildscript.txt @@ -1,6 +1,6 @@ real-time --dependencies=redis ---docker-repos=gcr.io/overleaf-ops,us-east1-docker.pkg.dev/overleaf-ops/ol-docker +--docker-repos=us-east1-docker.pkg.dev/overleaf-ops/ol-docker --env-add= --env-pass-through= --esmock-loader=False diff --git a/services/spelling/Makefile b/services/spelling/Makefile index db5d3cf0f8..d950114100 100644 --- a/services/spelling/Makefile +++ b/services/spelling/Makefile @@ -24,7 +24,6 @@ DOCKER_COMPOSE_TEST_UNIT = \ clean: -docker rmi ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) - -docker rmi gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -docker rmi us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) -$(DOCKER_COMPOSE_TEST_UNIT) down --rmi local -$(DOCKER_COMPOSE_TEST_ACCEPTANCE) down --rmi local @@ -35,24 +34,35 @@ MONOREPO=$(shell cd ../../ && pwd) # Eslint and prettier (plus some configs) are on the root. RUN_LINTING = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(HERE) node:18.20.2 npm run --silent +RUN_LINTING_CI = docker run --rm --volume $(MONOREPO)/.editorconfig:/overleaf/.editorconfig --volume $(MONOREPO)/.eslintignore:/overleaf/.eslintignore --volume $(MONOREPO)/.eslintrc:/overleaf/.eslintrc --volume $(MONOREPO)/.prettierignore:/overleaf/.prettierignore --volume $(MONOREPO)/.prettierrc:/overleaf/.prettierrc --volume $(MONOREPO)/tsconfig.backend.json:/overleaf/tsconfig.backend.json ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) npm run --silent + # Same but from the top of the monorepo RUN_LINTING_MONOREPO = docker run --rm -v $(MONOREPO):$(MONOREPO) -w $(MONOREPO) node:18.20.2 npm run --silent format: $(RUN_LINTING) format +format_ci: + $(RUN_LINTING_CI) format + format_fix: $(RUN_LINTING) format:fix lint: $(RUN_LINTING) lint +lint_ci: + $(RUN_LINTING_CI) lint + lint_fix: $(RUN_LINTING) lint:fix typecheck: $(RUN_LINTING) types:check +typecheck_ci: + $(RUN_LINTING_CI) types:check + test: format lint typecheck test_unit test_acceptance test_unit: @@ -96,30 +106,14 @@ benchmarks: $(DOCKER_COMPOSE_TEST_ACCEPTANCE) run --rm test_acceptance npm run benchmarks build: - docker pull gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - || docker pull gcr.io/overleaf-ops/$(PROJECT_NAME):main-deps \ - || echo 'nothing cached for gcr.io/overleaf-ops' - docker pull us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - || docker pull us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main-deps \ - || echo 'nothing cached for us-east1-docker.pkg.dev/overleaf-ops/ol-docker' docker build \ - --pull \ + --pull \ --build-arg BUILDKIT_INLINE_CACHE=1 \ - --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - --cache-from gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - --cache-from gcr.io/overleaf-ops/$(PROJECT_NAME):main-deps \ - --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ - --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main-deps \ - --target base \ - --file Dockerfile \ - ../.. - - docker build --pull --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --tag gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --cache-from gcr.io/overleaf-ops/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ + --tag ci/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-$(BUILD_NUMBER) \ - --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME)-deps \ + --tag us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):$(BRANCH_NAME) \ + --cache-from us-east1-docker.pkg.dev/overleaf-ops/ol-docker/$(PROJECT_NAME):main \ --file Dockerfile \ ../.. @@ -135,6 +129,7 @@ publish: format format_fix \ lint lint_fix \ build_types typecheck \ + lint_ci format_ci typecheck_ci \ test test_clean test_unit test_unit_clean \ test_acceptance test_acceptance_debug test_acceptance_pre_run \ test_acceptance_run test_acceptance_run_debug test_acceptance_clean \ diff --git a/services/spelling/buildscript.txt b/services/spelling/buildscript.txt index cfd533bdcd..0e73fb3f2d 100644 --- a/services/spelling/buildscript.txt +++ b/services/spelling/buildscript.txt @@ -1,7 +1,7 @@ spelling --data-dirs=cache --dependencies= ---docker-repos=gcr.io/overleaf-ops,us-east1-docker.pkg.dev/overleaf-ops/ol-docker +--docker-repos=us-east1-docker.pkg.dev/overleaf-ops/ol-docker --env-add= --env-pass-through= --esmock-loader=True