Skip to content

Commit 713331b

Browse files
authored
Merge pull request #248 from semantic-release/beta
2 parents 3d7d5f6 + 554fd77 commit 713331b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+2467
-4676
lines changed

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
- uses: actions/setup-node@v3
1616
with:
1717
cache: npm
18-
node-version: 16
18+
node-version: "lts/*"
1919
- run: npm ci
2020
- run: npx semantic-release
2121
env:

.github/workflows/test.yml

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,8 @@ jobs:
1616
matrix:
1717
node-version:
1818
# minimal required version
19-
- "12.20"
20-
# minimal required version for latest semantic-release
21-
- 14.17
22-
# latest LTS version
23-
- 16
19+
- 16.10
20+
- 18
2421

2522
runs-on: ubuntu-latest
2623

@@ -45,7 +42,7 @@ jobs:
4542
- uses: actions/checkout@v3
4643
- uses: actions/setup-node@v3
4744
with:
48-
node-version: 16
45+
node-version: "lts/*"
4946
cache: npm
5047
- run: npm clean-install
5148
- name: Ensure dependencies are compatible with the version of node

README.md

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,33 @@ $ npm install --save env-ci
1616
## Usage
1717

1818
```js
19-
const envCi = require("env-ci");
20-
21-
const { name, service, isCi, branch, commit, tag, build, buildUrl, job, jobUrl, isPr, pr, prBranch, slug, root } =
22-
envCi();
19+
import envCi from "env-ci";
20+
21+
const {
22+
name,
23+
service,
24+
isCi,
25+
branch,
26+
commit,
27+
tag,
28+
build,
29+
buildUrl,
30+
job,
31+
jobUrl,
32+
isPr,
33+
pr,
34+
prBranch,
35+
slug,
36+
root,
37+
} = envCi();
2338

2439
if (isCI) {
2540
console.log(`Building repo ${slug} on ${name} service`);
2641

2742
if (isPr) {
28-
console.log(`Building Pull Request #${pr} originating from branch ${prBranch} and targeting branch ${branch}`);
43+
console.log(
44+
`Building Pull Request #${pr} originating from branch ${prBranch} and targeting branch ${branch}`
45+
);
2946
} else {
3047
console.log(`Building branch ${branch}`);
3148
}

index.js

Lines changed: 60 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,67 @@
1-
const process = require("process");
2-
const git = require("./services/git.js");
1+
import appveyor from "./services/appveyor.js";
2+
import azurePipelines from "./services/azure-pipelines.js";
3+
import bamboo from "./services/bamboo.js";
4+
import bitbucket from "./services/bitbucket.js";
5+
import bitrise from "./services/bitrise.js";
6+
import buddy from "./services/buddy.js";
7+
import buildkite from "./services/buildkite.js";
8+
import circleci from "./services/circleci.js";
9+
import cirrus from "./services/cirrus.js";
10+
import cloudflarePages from "./services/cloudflare-pages.js";
11+
import codebuild from "./services/codebuild.js";
12+
import codefresh from "./services/codefresh.js";
13+
import codeship from "./services/codeship.js";
14+
import drone from "./services/drone.js";
15+
import git from "./services/git.js";
16+
import github from "./services/github.js";
17+
import gitlab from "./services/gitlab.js";
18+
import jenkins from "./services/jenkins.js";
19+
import netlify from "./services/netlify.js";
20+
import puppet from "./services/puppet.js";
21+
import sail from "./services/sail.js";
22+
import scrutinizer from "./services/scrutinizer.js";
23+
import semaphore from "./services/semaphore.js";
24+
import shippable from "./services/shippable.js";
25+
import teamcity from "./services/teamcity.js";
26+
import travis from "./services/travis.js";
27+
import vela from "./services/vela.js";
28+
import vercel from "./services/vercel.js";
29+
import wercker from "./services/wercker.js";
30+
import woodpecker from "./services/woodpecker.js";
331

432
const services = {
5-
appveyor: require("./services/appveyor.js"),
6-
azurePipelines: require("./services/azure-pipelines.js"),
7-
bamboo: require("./services/bamboo.js"),
8-
bitbucket: require("./services/bitbucket.js"),
9-
bitrise: require("./services/bitrise.js"),
10-
buddy: require("./services/buddy.js"),
11-
buildkite: require("./services/buildkite.js"),
12-
circleci: require("./services/circleci.js"),
13-
cirrus: require("./services/cirrus.js"),
14-
cloudflarePages: require("./services/cloudflare-pages.js"),
15-
codebuild: require("./services/codebuild.js"),
16-
codefresh: require("./services/codefresh.js"),
17-
codeship: require("./services/codeship.js"),
18-
drone: require("./services/drone.js"),
19-
github: require("./services/github.js"),
20-
gitlab: require("./services/gitlab.js"),
21-
jenkins: require("./services/jenkins.js"),
22-
netlify: require("./services/netlify.js"),
23-
puppet: require("./services/puppet.js"),
24-
sail: require("./services/sail.js"),
25-
scrutinizer: require("./services/scrutinizer.js"),
26-
semaphore: require("./services/semaphore.js"),
27-
shippable: require("./services/shippable.js"),
28-
teamcity: require("./services/teamcity.js"),
29-
travis: require("./services/travis.js"),
30-
vela: require("./services/vela.js"),
31-
vercel: require("./services/vercel.js"),
32-
wercker: require("./services/wercker.js"),
33-
woodpecker: require("./services/woodpecker.js"),
33+
appveyor,
34+
azurePipelines,
35+
bamboo,
36+
bitbucket,
37+
bitrise,
38+
buddy,
39+
buildkite,
40+
circleci,
41+
cirrus,
42+
cloudflarePages,
43+
codebuild,
44+
codefresh,
45+
codeship,
46+
drone,
47+
github,
48+
gitlab,
49+
jenkins,
50+
netlify,
51+
puppet,
52+
sail,
53+
scrutinizer,
54+
semaphore,
55+
shippable,
56+
teamcity,
57+
travis,
58+
vela,
59+
vercel,
60+
wercker,
61+
woodpecker,
3462
};
3563

36-
module.exports = ({ env = process.env, cwd = process.cwd() } = {}) => {
64+
export default ({ env = process.env, cwd = process.cwd() } = {}) => {
3765
for (const name of Object.keys(services)) {
3866
if (services[name].detect({ env, cwd })) {
3967
return { isCi: true, ...services[name].configuration({ env, cwd }) };

lib/git.js

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,27 @@
1-
const execa = require("execa");
1+
import { execaSync } from "execa";
22

3-
function head(options) {
3+
export function head(options) {
44
try {
5-
return execa.sync("git", ["rev-parse", "HEAD"], options).stdout;
5+
return execaSync("git", ["rev-parse", "HEAD"], options).stdout;
66
} catch {
77
return undefined;
88
}
99
}
1010

11-
function branch(options) {
11+
export function branch(options) {
1212
try {
13-
const headRef = execa.sync("git", ["rev-parse", "--abbrev-ref", "HEAD"], options).stdout;
13+
const headRef = execaSync(
14+
"git",
15+
["rev-parse", "--abbrev-ref", "HEAD"],
16+
options
17+
).stdout;
1418

1519
if (headRef === "HEAD") {
16-
const branch = execa
17-
.sync("git", ["show", "-s", "--pretty=%d", "HEAD"], options)
20+
const branch = execaSync(
21+
"git",
22+
["show", "-s", "--pretty=%d", "HEAD"],
23+
options
24+
)
1825
.stdout.replace(/^\(|\)$/g, "")
1926
.split(", ")
2027
.find((branch) => branch.startsWith("origin/"));
@@ -26,5 +33,3 @@ function branch(options) {
2633
return undefined;
2734
}
2835
}
29-
30-
module.exports = { head, branch };

lib/utils.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
function prNumber(pr) {
1+
export function prNumber(pr) {
22
return (/\d+(?!.*\d+)/.exec(pr) || [])[0];
33
}
44

5-
function parseBranch(branch) {
6-
return branch ? /^(?:refs\/heads\/)?(?<branch>.+)$/i.exec(branch)[1] : undefined;
5+
export function parseBranch(branch) {
6+
return branch
7+
? /^(?:refs\/heads\/)?(?<branch>.+)$/i.exec(branch)[1]
8+
: undefined;
79
}
8-
9-
module.exports = { prNumber, parseBranch };

0 commit comments

Comments
 (0)