diff --git a/.circleci/config.yml b/.circleci/config.yml index 77121969d47..95f85accb9a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -83,6 +83,7 @@ jobs: - ./packages/es-indexer/node_modules - ./packages/ddex/node_modules - ./packages/ddex/webapp/node_modules + - ./packages/ddex/publisher/node_modules - ./packages/trpc-server/node_modules generate-release-branch: @@ -445,6 +446,7 @@ workflows: packages/identity-service/.* run-identity-workflow true packages/identity-service/.* run-integration-workflow true packages/ddex/webapp/.* run-ddex-webapp-workflow true + packages/ddex/publisher/.* run-ddex-publisher-workflow true eth-contracts/.* run-eth-contracts-workflow true monitoring/healthz/.* run-healthz-workflow true protocol-dashboard/.* run-protocol-dashboard-workflow true @@ -455,6 +457,7 @@ workflows: .circleci/.* run-eth-contracts-workflow true .circleci/.* run-protocol-dashboard-workflow true .circleci/.* run-ddex-webapp-workflow true + .circleci/.* run-ddex-publisher-workflow true .circleci/.* run-healthz-workflow true .circleci/.* run-contracts-workflow true .circleci/.* run-sdk-workflow true @@ -487,6 +490,7 @@ workflows: packages/libs/.* run-identity-workflow true packages/libs/.* run-protocol-dashboard-workflow true packages/libs/.* run-ddex-webapp-workflow true + packages/libs/.* run-ddex-publisher-workflow true packages/libs/.* run-sdk-workflow true packages/libs/.* run-web-workflow true packages/libs/.* run-mobile-workflow true @@ -530,6 +534,7 @@ workflows: packages/web/.* run-web-workflow true packages/embed/.* run-embed-workflow true packages/ddex/webapp/.* run-ddex-webapp-workflow true + packages/ddex/publisher/.* run-ddex-publisher-workflow true protocol-dashboard/.* run-protocol-dashboard-workflow true monitoring/healthz/.* run-healthz-workflow true requires: diff --git a/.circleci/src/@continue_config.yml b/.circleci/src/@continue_config.yml index 5ca89ada683..890ceaad8bb 100644 --- a/.circleci/src/@continue_config.yml +++ b/.circleci/src/@continue_config.yml @@ -73,6 +73,9 @@ parameters: run-ddex-webapp-workflow: type: boolean default: false + run-ddex-publisher-workflow: + type: boolean + default: false # Can enable recurring probers against stage at some point # workflows: # version: 2.1 diff --git a/.circleci/src/jobs/@ddex-jobs.yml b/.circleci/src/jobs/@ddex-jobs.yml index ab1bc4974a4..9f4cbb4b869 100644 --- a/.circleci/src/jobs/@ddex-jobs.yml +++ b/.circleci/src/jobs/@ddex-jobs.yml @@ -26,3 +26,32 @@ ddex-webapp-init: - node_modules - packages/ddex/node_modules - packages/ddex/webapp/node_modules + +ddex-publisher-init: + working_directory: ~/audius-protocol + docker: + - image: cimg/node:18.17 + steps: + - checkout + - attach_workspace: + at: ./ + + # Download and cache dependencies + - create_concatenated_patch_file: + filename: combined-patch-file.txt + + - restore_cache: + keys: + - cache-{{ checksum "package-lock.json" }}-{{ checksum "combined-patch-file.txt" }} + + - run: + name: lint & typecheck + command: | + npx turbo run verify --filter=@audius/ddex-publisher + + - persist_to_workspace: + root: ./ + paths: + - node_modules + - packages/ddex/node_modules + - packages/ddex/publisher/node_modules diff --git a/.circleci/src/workflows/ddex-publisher.yml b/.circleci/src/workflows/ddex-publisher.yml new file mode 100644 index 00000000000..12fd9b88e3a --- /dev/null +++ b/.circleci/src/workflows/ddex-publisher.yml @@ -0,0 +1,3 @@ +when: << pipeline.parameters.run-ddex-publisher-workflow >> +jobs: + - ddex-publisher-init diff --git a/.circleci/src/workflows/ddex.yml b/.circleci/src/workflows/ddex-webapp.yml similarity index 100% rename from .circleci/src/workflows/ddex.yml rename to .circleci/src/workflows/ddex-webapp.yml diff --git a/.circleci/src/workflows/release.yml b/.circleci/src/workflows/release.yml index 76a37dc9879..c5b2075b09c 100644 --- a/.circleci/src/workflows/release.yml +++ b/.circleci/src/workflows/release.yml @@ -219,7 +219,7 @@ jobs: - push-uptime - push-ddex-web - push-ddex-ingester - # - push-ddex-publisher + - push-ddex-publisher # uncomment these when arm builds are stable # - push-identity-service-arm # - push-mediorum-arm diff --git a/package-lock.json b/package-lock.json index 8349dbaa112..e4f192e34ea 100644 --- a/package-lock.json +++ b/package-lock.json @@ -114688,6 +114688,7 @@ "mongoose": "8.1.0" }, "devDependencies": { + "@types/express": "4.17.21", "@types/node": "20.11.10", "@typescript-eslint/eslint-plugin": "6.17.0", "@typescript-eslint/parser": "6.17.0", diff --git a/packages/ddex/publisher/package.json b/packages/ddex/publisher/package.json index 89c7fc79b3d..b34133f213d 100644 --- a/packages/ddex/publisher/package.json +++ b/packages/ddex/publisher/package.json @@ -21,6 +21,7 @@ "mongoose": "8.1.0" }, "devDependencies": { + "@types/express": "4.17.21", "eslint-config-prettier": "9.1.0", "eslint-plugin-prettier": "5.1.2", "@typescript-eslint/eslint-plugin": "6.17.0",