diff --git a/.github/workflows/manual-cdn.yml b/.github/workflows/manual-cdn.yml index 5c9ec9bc7f..fc818f2c80 100644 --- a/.github/workflows/manual-cdn.yml +++ b/.github/workflows/manual-cdn.yml @@ -2,10 +2,20 @@ name: Manually triggered CDN upload on: workflow_dispatch: inputs: - name: - description: 'Package to upload' + package: + description: Package to upload required: true - default: 'uppy' + type: choice + options: + - uppy + - '@uppy/locales' + version: + description: Version to upload (from npm) + type: string + force: + description: --force + type: boolean + default: false env: YARN_ENABLE_GLOBAL_CACHE: false @@ -32,15 +42,34 @@ jobs: uses: actions/setup-node@v4 with: node-version: lts/* - - name: Install dependencies + - name: Install upload-to-cdn dependencies + if: ${{ inputs.version }} + run: corepack yarn workspaces focus @uppy-dev/upload-to-cdn + env: + # https://docs.cypress.io/guides/references/advanced-installation#Skipping-installation + CYPRESS_INSTALL_BINARY: 0 + - name: Install all dependencies + if: ${{ !inputs.version }} run: corepack yarn install --immutable env: # https://docs.cypress.io/guides/references/advanced-installation#Skipping-installation CYPRESS_INSTALL_BINARY: 0 - name: Build before publishing + if: ${{ !inputs.version }} run: corepack yarn run build - - name: Upload `${{ github.event.inputs.name }}` to CDN - run: corepack yarn run uploadcdn ${{ github.event.inputs.name }} + - name: Upload "${{ inputs.package }}" to CDN + if: ${{ !inputs.force }} + run: corepack yarn run uploadcdn "$PACKAGE" "$VERSION" + env: + PACKAGE: ${{inputs.package}} + VERSION: ${{inputs.version}} + EDGLY_KEY: ${{secrets.EDGLY_KEY}} + EDGLY_SECRET: ${{secrets.EDGLY_SECRET}} + - name: Upload "${{ inputs.package }}" to CDN + if: ${{ inputs.force }} + run: corepack yarn run uploadcdn "$PACKAGE" "$VERSION" -- --force env: + PACKAGE: ${{inputs.package}} + VERSION: ${{inputs.version}} EDGLY_KEY: ${{secrets.EDGLY_KEY}} EDGLY_SECRET: ${{secrets.EDGLY_SECRET}} diff --git a/package.json b/package.json index 8f2b79adb0..e1615307cd 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,6 @@ "e2e" ], "devDependencies": { - "@aws-sdk/client-s3": "^3.338.0", "@babel/cli": "^7.14.5", "@babel/core": "^7.14.6", "@babel/eslint-parser": "^7.11.3", @@ -61,11 +60,9 @@ "@typescript-eslint/eslint-plugin": "^7.0.0", "@typescript-eslint/parser": "^7.0.0", "@uppy-dev/remark-lint-uppy": "workspace:*", - "adm-zip": "^0.5.5", "autoprefixer": "^10.2.6", "babel-plugin-inline-package-json": "^2.0.0", "chalk": "^5.0.0", - "concat-stream": "^2.0.0", "cssnano": "^7.0.0", "dotenv": "^16.0.0", "esbuild": "^0.21.2", @@ -91,11 +88,8 @@ "glob": "^8.0.0", "jsdom": "^24.0.0", "lint-staged": "^15.0.0", - "mime-types": "^2.1.26", - "npm-packlist": "^5.0.0", "npm-run-all": "^4.1.5", "onchange": "^7.1.0", - "pacote": "^13.0.0", "postcss": "^8.4.31", "postcss-dir-pseudo-class": "^6.0.0", "postcss-logical": "^5.0.0", @@ -109,7 +103,6 @@ "stylelint-config-rational-order": "^0.1.2", "stylelint-config-standard": "^36.0.0", "stylelint-config-standard-scss": "^13.0.0", - "tar": "^6.1.0", "typescript": "~5.4", "vitest": "^1.2.1", "vue-template-compiler": "workspace:*" @@ -159,7 +152,7 @@ "test:unit": "yarn run build:lib && yarn test:watch --run", "test:watch": "vitest --environment jsdom --dir packages/@uppy", "test": "npm-run-all lint test:locale-packs:unused test:unit test:companion", - "uploadcdn": "yarn node ./bin/upload-to-cdn.js", + "uploadcdn": "yarn node ./private/upload-to-cdn/index.js", "version": "yarn node ./bin/after-version-bump.js", "watch:css": "onchange 'packages/{@uppy/,}*/src/*.scss' --initial --verbose -- yarn run build:css", "watch:js:bundle": "onchange 'packages/{@uppy/,}*/src/**/*.{js,ts,jsx,tsx}' --initial --verbose -- yarn run build:bundle", diff --git a/bin/upload-to-cdn.js b/private/upload-to-cdn/index.js old mode 100644 new mode 100755 similarity index 98% rename from bin/upload-to-cdn.js rename to private/upload-to-cdn/index.js index 243ef9dc29..61f927bedf --- a/bin/upload-to-cdn.js +++ b/private/upload-to-cdn/index.js @@ -11,11 +11,11 @@ // // Run as: // -// npm run uploadcdn [version] +// yarn uploadcdn [version] // // To override an existing release (DANGER!) // -// npm run uploadcdn [version] -- --force +// yarn uploadcdn [version] -- --force // // Authors: // diff --git a/private/upload-to-cdn/package.json b/private/upload-to-cdn/package.json new file mode 100644 index 0000000000..ae0609d4d9 --- /dev/null +++ b/private/upload-to-cdn/package.json @@ -0,0 +1,12 @@ +{ + "name": "@uppy-dev/upload-to-cdn", + "devDependencies": { + "@aws-sdk/client-s3": "^3.338.0", + "adm-zip": "^0.5.5", + "concat-stream": "^2.0.0", + "mime-types": "^2.1.26", + "npm-packlist": "^5.0.0", + "pacote": "^13.0.0", + "tar": "^6.1.0" + } +} diff --git a/yarn.lock b/yarn.lock index b461ea12df..7b748150a4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8010,7 +8010,6 @@ __metadata: version: 0.0.0-use.local resolution: "@uppy-dev/build@workspace:." dependencies: - "@aws-sdk/client-s3": "npm:^3.338.0" "@babel/cli": "npm:^7.14.5" "@babel/core": "npm:^7.14.6" "@babel/eslint-parser": "npm:^7.11.3" @@ -8028,11 +8027,9 @@ __metadata: "@typescript-eslint/eslint-plugin": "npm:^7.0.0" "@typescript-eslint/parser": "npm:^7.0.0" "@uppy-dev/remark-lint-uppy": "workspace:*" - adm-zip: "npm:^0.5.5" autoprefixer: "npm:^10.2.6" babel-plugin-inline-package-json: "npm:^2.0.0" chalk: "npm:^5.0.0" - concat-stream: "npm:^2.0.0" cssnano: "npm:^7.0.0" dotenv: "npm:^16.0.0" esbuild: "npm:^0.21.2" @@ -8058,11 +8055,8 @@ __metadata: glob: "npm:^8.0.0" jsdom: "npm:^24.0.0" lint-staged: "npm:^15.0.0" - mime-types: "npm:^2.1.26" - npm-packlist: "npm:^5.0.0" npm-run-all: "npm:^4.1.5" onchange: "npm:^7.1.0" - pacote: "npm:^13.0.0" postcss: "npm:^8.4.31" postcss-dir-pseudo-class: "npm:^6.0.0" postcss-logical: "npm:^5.0.0" @@ -8076,7 +8070,6 @@ __metadata: stylelint-config-rational-order: "npm:^0.1.2" stylelint-config-standard: "npm:^36.0.0" stylelint-config-standard-scss: "npm:^13.0.0" - tar: "npm:^6.1.0" typescript: "npm:~5.4" vitest: "npm:^1.2.1" vue-template-compiler: "workspace:*" @@ -8147,6 +8140,20 @@ __metadata: languageName: unknown linkType: soft +"@uppy-dev/upload-to-cdn@workspace:private/upload-to-cdn": + version: 0.0.0-use.local + resolution: "@uppy-dev/upload-to-cdn@workspace:private/upload-to-cdn" + dependencies: + "@aws-sdk/client-s3": "npm:^3.338.0" + adm-zip: "npm:^0.5.5" + concat-stream: "npm:^2.0.0" + mime-types: "npm:^2.1.26" + npm-packlist: "npm:^5.0.0" + pacote: "npm:^13.0.0" + tar: "npm:^6.1.0" + languageName: unknown + linkType: soft + "@uppy-example/angular@workspace:examples/angular-example": version: 0.0.0-use.local resolution: "@uppy-example/angular@workspace:examples/angular-example"