Compare commits

...
37 Commits
Author SHA1 Message Date
Josh Gross deb7ae927c Merge pull request #192 from actions/joshmgross/update-minor-deps
Update minor versions of dependencies
2021-09-23 14:44:44 -04:00
Josh Gross b6ebfda822 Update licenses 2021-09-23 17:01:04 +00:00
Josh Gross 6a0bb322b7 Update minor versions of dependencies 2021-09-23 16:36:42 +00:00
Josh Gross 5d31eecbde Merge pull request #190 from patrick91/patch-1
Make it clear that require is a custom wrapper
2021-09-14 11:25:52 -04:00
Patrick Arminio 282dd6ab09 Make it clear that require is a custom wrapper
Happy to change the wording 😊
2021-09-14 12:39:05 +01:00
Josh Gross f891eff651 Merge pull request #181 from actions/joshmgross/update-dependencies
Run npm audit and update dev dependencies
2021-08-19 13:52:50 -04:00
Josh Gross 43434074d0 Update dev dependencies 2021-08-19 13:46:23 -04:00
Josh Gross ab3c97fb6b Run npm audit fix 2021-08-19 13:42:15 -04:00
Josh Gross e02270e59f Merge pull request #178 from bhavanakonchada/bhavanakonchada-exec
Adding @actions/exec to github-script
2021-08-19 13:37:27 -04:00
Bhavana Konchada c07f5aaf74 Placed the exe.dep.yml file at the right location 2021-08-12 11:27:26 -07:00
Bhavana Konchada 49d397a538 updated package-lock.json to reflect v2 2021-08-11 15:55:57 -07:00
Bhavana Konchada 6f9b9a87b5 Merge branch 'bhavanakonchada-exec' of https://github.com/bhavanakonchada/github-script into bhavanakonchada-exec 2021-08-11 13:52:35 -07:00
Bhavana Konchada 6456c11da2 Adding @actions/exec
adding @actions/exec

adding @qctions/exec

updated readme.md

Added license file for @actions/exec
2021-08-11 13:51:41 -07:00
Bhavana Konchada a8325789f1 Added license file for @actions/exec 2021-08-11 13:33:27 -07:00
Bhavana Konchada 771c6ccbd2 updated readme.md 2021-08-11 13:25:28 -07:00
Bhavana Konchada 854d2138dc adding @qctions/exec 2021-08-10 16:29:59 -07:00
Bhavana Konchada f9d46abb2a adding @actions/exec 2021-08-10 16:29:26 -07:00
Josh Gross aaceb2cf67 Merge pull request #177 from brcrista/main
Create check-dist.yml
2021-08-10 18:27:53 -04:00
Brian Cristante 5ed343d94b Fix triggers in licensed.yml 2021-08-10 11:20:11 -04:00
Brian Cristante a7abfdfa4d Add check-dist.yml 2021-08-10 11:20:11 -04:00
Josh Gross 4294354415 Merge pull request #174 from oscard0m/add-cache-to-node-workflows
ci(workflow): add cache to workflows using actions/setup-node
2021-08-03 18:12:58 -04:00
Oscar Dominguez ecb772f447 ci(workflow): add 'npm' cache for actions/setup-node in .github/workflows 2021-07-18 22:31:39 +02:00
Josh Gross 5fa6e37385 Merge pull request #159 from actions/joshmgross/update-workflows
Update workflows
2021-06-28 14:51:56 -04:00
Josh Gross 936c9d9f72 Update to latest actions 2021-06-28 14:45:32 -04:00
Josh Gross 672319273b Merge pull request #153 from actions/joshmgross/npm-audit
Run `npm audit fix`
2021-06-18 14:02:49 -04:00
Josh Gross 7c21e3730f Run npm audit fix 2021-06-18 13:56:15 -04:00
Josh Gross 787406b248 Merge pull request #152 from actions/joshmgross/add-instructions-for-pat
Add instructions for using a separate GitHub token
2021-06-18 13:53:38 -04:00
Josh Gross bfb7c2383c Add instructions for using a separate GitHub token 2021-06-10 12:15:08 -04:00
Josh Gross c32ce148a6 Merge pull request #145 from MichaelDeBoey/patch-1
docs: remove `github-token` usage from examples
2021-06-10 12:04:15 -04:00
Michaël De Boey cec08706ee docs: remove github-token usage from examples 2021-05-23 01:53:58 +02:00
Josh Gross a3e7071a34 Merge pull request #137 from actions/joshgross/update-actions-core
Update @actions/core to 1.2.7
2021-04-23 13:29:23 -04:00
Josh Gross 3858e71d11 Update license for @actions/core 2021-04-23 11:50:36 -04:00
Josh Gross 2b34a689ec Update @actions/core to 1.2.7 2021-04-23 11:42:24 -04:00
Jonathan Clem 85e88a66ea Merge pull request #136 from actions/search-cwd-first
Only search cwd on user-script require calls
2021-04-21 18:31:08 -04:00
Jonathan Clem 5cbb702e24 v4.0.1 2021-04-21 18:30:43 -04:00
Jonathan Clem 1ef7fd09ca Remove require search fallback 2021-04-21 18:13:51 -04:00
Jonathan Clem a49bf6b2cd Search the cwd first, then existing module paths 2021-04-21 18:10:10 -04:00
31 changed files with 8012 additions and 6778 deletions

No files matched your search

+52
View File
@@ -0,0 +1,52 @@
# `dist/index.js` is a special file in Actions.
# When you reference an action with `uses:` in a workflow,
# `index.js` is the code that will run.
# For our project, we generate this file through a build process
# from other source files.
# We need to make sure the checked-in `index.js` actually matches what we expect it to be.
name: Check dist/
on:
push:
branches:
- main
paths-ignore:
- '**.md'
pull_request:
paths-ignore:
- '**.md'
workflow_dispatch:
jobs:
check-dist:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set Node.js 12.x
uses: actions/setup-node@v1
with:
node-version: 12.x
- name: Install dependencies
run: npm ci
- name: Rebuild the dist/ directory
run: npm run build
- name: Compare the expected and actual dist/ directories
run: |
if [ "$(git diff --ignore-space-at-eol dist/ | wc -l)" -gt "0" ]; then
echo "Detected uncommitted changes after build. See status below:"
git diff
exit 1
fi
id: diff
# If index.js was different than expected, upload the expected version as an artifact
- uses: actions/upload-artifact@v2
if: ${{ failure() && steps.diff.conclusion == 'failure' }}
with:
name: dist
path: dist/
+7 -8
View File
@@ -1,21 +1,20 @@
name: CI name: CI
on: on:
push: {branches: main} push:
pull_request: {branches: main} branches: [main]
pull_request:
branches: [main]
jobs: jobs:
ci: ci:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- uses: actions/setup-node@v1 - uses: actions/setup-node@v2
with: {node-version: 13.x}
- uses: actions/cache@v1
with: with:
path: ~/.npm node-version: 12
key: ${{runner.os}}-npm-${{hashFiles('**/package-lock.json')}} cache: npm
restore-keys: ${{runner.os}}-npm-
- run: npm ci - run: npm ci
- run: npm run style:check - run: npm run style:check
- run: npm test - run: npm test
+5 -3
View File
@@ -1,8 +1,10 @@
name: Integration name: Integration
on: on:
push: {branches: main} push:
pull_request: {branches: main} branches: [main]
pull_request:
branches: [main]
jobs: jobs:
test-return: test-return:
@@ -39,7 +41,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- uses: actions/cache@v1 - uses: actions/cache@v2
with: with:
path: ~/.npm path: ~/.npm
key: ${{runner.os}}-npm-${{hashFiles('**/package-lock.json')}} key: ${{runner.os}}-npm-${{hashFiles('**/package-lock.json')}}
+8 -11
View File
@@ -1,10 +1,12 @@
name: Licensed name: Licensed
on: on:
push: {branches: main} push:
pull_request: {branches: main} branches:
repository_dispatch: - main
workflow_dispatch: pull_request:
branches:
- main
jobs: jobs:
test: test:
@@ -12,16 +14,11 @@ jobs:
name: Check licenses name: Check licenses
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- uses: actions/cache@v1
with:
path: ~/.npm
key: ${{runner.os}}-npm-${{hashFiles('**/package-lock.json')}}
restore-keys: ${{runner.os}}-npm-
- run: npm ci - run: npm ci
- name: Install licensed - name: Install licensed
run: |- run: |
cd $RUNNER_TEMP cd $RUNNER_TEMP
curl -Lfs -o licensed.tar.gz https://github.com/github/licensed/releases/download/2.9.2/licensed-2.9.2-linux-x64.tar.gz curl -Lfs -o licensed.tar.gz https://github.com/github/licensed/releases/download/2.12.2/licensed-2.12.2-linux-x64.tar.gz
sudo tar -xzf licensed.tar.gz sudo tar -xzf licensed.tar.gz
sudo mv licensed /usr/local/bin/licensed sudo mv licensed /usr/local/bin/licensed
- run: licensed status - run: licensed status
+1 -1
View File
@@ -2,7 +2,7 @@ name: Pull Request Test
on: on:
pull_request: pull_request:
branches: main branches: [main]
types: [opened, synchronize] types: [opened, synchronize]
jobs: jobs:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File renamed without changes.
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
+34 -7
View File
@@ -18,6 +18,7 @@ arguments will be provided:
- `core` A reference to the [@actions/core](https://github.com/actions/toolkit/tree/main/packages/core) package - `core` A reference to the [@actions/core](https://github.com/actions/toolkit/tree/main/packages/core) package
- `glob` A reference to the [@actions/glob](https://github.com/actions/toolkit/tree/main/packages/glob) package - `glob` A reference to the [@actions/glob](https://github.com/actions/toolkit/tree/main/packages/glob) package
- `io` A reference to the [@actions/io](https://github.com/actions/toolkit/tree/main/packages/io) package - `io` A reference to the [@actions/io](https://github.com/actions/toolkit/tree/main/packages/io) package
- `exec` A reference to the [@actions/exec](https://github.com/actions/toolkit/tree/main/packages/exec) package
- `require` A proxy wrapper around the normal Node.js `require` to enable - `require` A proxy wrapper around the normal Node.js `require` to enable
requiring relative paths (relative to the current working directory) and requiring relative paths (relative to the current working directory) and
requiring npm packages installed in the current working directory. If for requiring npm packages installed in the current working directory. If for
@@ -66,7 +67,6 @@ output of a github-script step. For some workflows, string encoding is preferred
- uses: actions/github-script@v4 - uses: actions/github-script@v4
id: my-script id: my-script
with: with:
github-token: ${{secrets.GITHUB_TOKEN}}
result-encoding: string result-encoding: string
script: return "I will be string (not JSON) encoded!" script: return "I will be string (not JSON) encoded!"
``` ```
@@ -100,7 +100,6 @@ jobs:
steps: steps:
- uses: actions/github-script@v4 - uses: actions/github-script@v4
with: with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: | script: |
github.issues.createComment({ github.issues.createComment({
issue_number: context.issue.number, issue_number: context.issue.number,
@@ -123,7 +122,6 @@ jobs:
steps: steps:
- uses: actions/github-script@v4 - uses: actions/github-script@v4
with: with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: | script: |
github.issues.addLabels({ github.issues.addLabels({
issue_number: context.issue.number, issue_number: context.issue.number,
@@ -144,7 +142,6 @@ jobs:
steps: steps:
- uses: actions/github-script@v4 - uses: actions/github-script@v4
with: with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: | script: |
// Get a list of all issues created by the PR opener // Get a list of all issues created by the PR opener
// See: https://octokit.github.io/rest.js/#pagination // See: https://octokit.github.io/rest.js/#pagination
@@ -188,7 +185,6 @@ jobs:
steps: steps:
- uses: actions/github-script@v4 - uses: actions/github-script@v4
with: with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: | script: |
const diff_url = context.payload.pull_request.diff_url const diff_url = context.payload.pull_request.diff_url
const result = await github.request(diff_url) const result = await github.request(diff_url)
@@ -213,7 +209,6 @@ jobs:
steps: steps:
- uses: actions/github-script@v4 - uses: actions/github-script@v4
with: with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: | script: |
const query = `query($owner:String!, $name:String!, $label:String!) { const query = `query($owner:String!, $name:String!, $label:String!) {
repository(owner:$owner, name:$name){ repository(owner:$owner, name:$name){
@@ -309,7 +304,10 @@ module.exports = async ({github, context, core}) => {
### Use npm packages ### Use npm packages
Like importing your own files above, you can also use installed modules: Like importing your own files above, you can also use installed modules.
Note that this is achieved with a wrapper on top `require`, so if you're
trying to require a module inside your own file, you might need to import
it externally or pass the `require` wrapper to your file:
```yaml ```yaml
on: push on: push
@@ -356,3 +354,32 @@ jobs:
console.log(`Hello ${FIRST_NAME} ${LAST_NAME}`) console.log(`Hello ${FIRST_NAME} ${LAST_NAME}`)
``` ```
### Using a separate GitHub token
The `GITHUB_TOKEN` used by default is scoped to the current repository, see [Authentication in a workflow](https://docs.github.com/actions/reference/authentication-in-a-workflow).
If you need access to a different repository or an API that the `GITHUB_TOKEN` doesn't have permissions to, you can provide your own [PAT](https://help.github.com/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line) as a secret using the `github-token` input.
[Learn more about creating and using encrypted secrets](https://docs.github.com/actions/reference/encrypted-secrets)
```yaml
on:
issues:
types: [opened]
jobs:
apply-label:
runs-on: ubuntu-latest
steps:
- uses: actions/github-script@v4
with:
github-token: ${{ secrets.MY_PAT }}
script: |
github.issues.addLabels({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
labels: ['Triage']
})
```
+3663 -345
View File
File diff suppressed because it is too large. Load diff
+4221 -6383
View File
File diff suppressed because it is too large. Load diff
+16 -15
View File
@@ -1,7 +1,7 @@
{ {
"name": "github-script", "name": "github-script",
"description": "A GitHub action for executing a simple script", "description": "A GitHub action for executing a simple script",
"version": "4.0.0", "version": "4.0.2",
"author": "GitHub", "author": "GitHub",
"license": "MIT", "license": "MIT",
"main": "dist/index.js", "main": "dist/index.js",
@@ -35,26 +35,27 @@
} }
}, },
"dependencies": { "dependencies": {
"@actions/core": "^1.2.6", "@actions/core": "^1.5.0",
"@actions/exec": "^1.1.0",
"@actions/github": "^4.0.0", "@actions/github": "^4.0.0",
"@actions/glob": "^0.1.1", "@actions/glob": "^0.1.2",
"@actions/io": "^1.0.2", "@actions/io": "^1.1.1",
"@octokit/core": "^3.2.1", "@octokit/core": "^3.5.1",
"@octokit/plugin-paginate-rest": "^2.6.0", "@octokit/plugin-paginate-rest": "^2.16.4",
"@octokit/plugin-rest-endpoint-methods": "4.2.1" "@octokit/plugin-rest-endpoint-methods": "^4.2.1"
}, },
"devDependencies": { "devDependencies": {
"@types/jest": "^26.0.10", "@types/jest": "^26.0.24",
"@typescript-eslint/eslint-plugin": "^3.9.1", "@typescript-eslint/eslint-plugin": "^3.10.1",
"@typescript-eslint/parser": "^3.9.1", "@typescript-eslint/parser": "^3.10.1",
"@vercel/ncc": "^0.23.0", "@vercel/ncc": "^0.23.0",
"eslint": "^7.7.0", "eslint": "^7.32.0",
"eslint-config-prettier": "^6.11.0", "eslint-config-prettier": "^6.15.0",
"husky": "^4.2.5", "husky": "^4.2.5",
"jest": "^26.4.1", "jest": "^26.6.3",
"npm-run-all": "^4.1.5", "npm-run-all": "^4.1.5",
"prettier": "^2.0.5", "prettier": "^2.0.5",
"ts-jest": "^26.2.0", "ts-jest": "^26.5.6",
"typescript": "^4.0.2" "typescript": "^4.3.5"
} }
} }
+2
View File
@@ -1,4 +1,5 @@
import * as core from '@actions/core' import * as core from '@actions/core'
import * as exec from '@actions/exec'
import {Context} from '@actions/github/lib/context' import {Context} from '@actions/github/lib/context'
import {GitHub} from '@actions/github/lib/utils' import {GitHub} from '@actions/github/lib/utils'
import * as glob from '@actions/glob' import * as glob from '@actions/glob'
@@ -10,6 +11,7 @@ type AsyncFunctionArguments = {
context: Context context: Context
core: typeof core core: typeof core
github: InstanceType<typeof GitHub> github: InstanceType<typeof GitHub>
exec: typeof exec
glob: typeof glob glob: typeof glob
io: typeof io io: typeof io
require: NodeRequire require: NodeRequire
+2
View File
@@ -1,4 +1,5 @@
import * as core from '@actions/core' import * as core from '@actions/core'
import * as exec from '@actions/exec'
import {context, getOctokit} from '@actions/github' import {context, getOctokit} from '@actions/github'
import * as glob from '@actions/glob' import * as glob from '@actions/glob'
import * as io from '@actions/io' import * as io from '@actions/io'
@@ -36,6 +37,7 @@ async function main(): Promise<void> {
github, github,
context, context,
core, core,
exec,
glob, glob,
io io
}, },
+1 -5
View File
@@ -7,20 +7,16 @@ export const wrapRequire = new Proxy(__non_webpack_require__, {
return target.apply(thisArg, [moduleID]) return target.apply(thisArg, [moduleID])
} }
try {
return target.apply(thisArg, [moduleID])
} catch (err) {
const modulePath = target.resolve.apply(thisArg, [ const modulePath = target.resolve.apply(thisArg, [
moduleID, moduleID,
{ {
// Webpack does not have an escape hatch for getting the actual // Webpack does not have an escape hatch for getting the actual
// module, other than `eval`. // module, other than `eval`.
paths: eval('module').paths.concat(process.cwd()) paths: [process.cwd()]
} }
]) ])
return target.apply(thisArg, [modulePath]) return target.apply(thisArg, [modulePath])
}
}, },
get: (target, prop, receiver) => { get: (target, prop, receiver) => {