Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce a GitHub Actions workflow for publishing a release #11

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions .github/workflows/publish_release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: Publish release
on:
release:
types: [published]
pull_request:
permissions:
contents: read

jobs:
publish:
name: Publish
runs-on: ubuntu-latest

strategy:
matrix:
node-version: [lts/*]

steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
registry-url: 'https://registry.npmjs.org'

- name: Install dependencies
run: npm install

- name: Build the `pdfjs-dist` library
run: npx gulp dist

- name: Publish the `pdfjs-dist` library to NPM
run: npm publish ./build/dist --dry-run
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
48 changes: 4 additions & 44 deletions gulpfile.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2226,11 +2226,12 @@ function packageJson() {
},
repository: {
type: "git",
url: DIST_REPO_URL,
url: `git+${DIST_REPO_URL}.git`,
},
engines: {
node: ">=18",
},
scripts: {},
};

return createStringSource(
Expand All @@ -2240,7 +2241,7 @@ function packageJson() {
}

gulp.task(
"dist-pre",
"dist",
gulp.series(
"generic",
"generic-legacy",
Expand Down Expand Up @@ -2368,7 +2369,7 @@ gulp.task(

gulp.task(
"dist-install",
gulp.series("dist-pre", function createDistInstall(done) {
gulp.series("dist", function createDistInstall(done) {
let distPath = DIST_DIR;
const opts = {};
const installPath = process.env.PDFJS_INSTALL_PATH;
Expand All @@ -2381,47 +2382,6 @@ gulp.task(
})
);

gulp.task(
"dist",
gulp.series("dist-pre", function createDist(done) {
const VERSION = getVersionJSON().version;

console.log();
console.log("### Committing changes");

let reason = process.env.PDFJS_UPDATE_REASON;
// Attempt to work-around the broken link, see https://github.com/mozilla/pdf.js/issues/10391
if (typeof reason === "string") {
const reasonParts =
/^(See )(mozilla\/pdf\.js)@tags\/(v\d+\.\d+\.\d+)\s*$/.exec(reason);

if (reasonParts) {
reason =
reasonParts[1] +
"https://github.com/" +
reasonParts[2] +
"/releases/tag/" +
reasonParts[3];
}
}
const message =
"PDF.js version " + VERSION + (reason ? " - " + reason : "");
safeSpawnSync("git", ["add", "*"], { cwd: DIST_DIR });
safeSpawnSync("git", ["commit", "-am", message], { cwd: DIST_DIR });
safeSpawnSync("git", ["tag", "-a", "v" + VERSION, "-m", message], {
cwd: DIST_DIR,
});

console.log();
console.log("Done. Push with");
console.log(
" cd " + DIST_DIR + "; git push --tags " + DIST_REPO_URL + " master"
);
console.log();
done();
})
);

gulp.task(
"mozcentralbaseline",
gulp.series(createBaseline, function createMozcentralBaseline(done) {
Expand Down