Compare commits

..
32 Commits
Author SHA1 Message Date
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
14 changed files with 4980 additions and 6506 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
on:
push: {branches: main}
pull_request: {branches: main}
push:
branches: [main]
pull_request:
branches: [main]
jobs:
ci:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with: {node-version: 13.x}
- uses: actions/cache@v1
- uses: actions/setup-node@v2
with:
path: ~/.npm
key: ${{runner.os}}-npm-${{hashFiles('**/package-lock.json')}}
restore-keys: ${{runner.os}}-npm-
node-version: 12
cache: npm
- run: npm ci
- run: npm run style:check
- run: npm test
+5 -3
View File
@@ -1,8 +1,10 @@
name: Integration
on:
push: {branches: main}
pull_request: {branches: main}
push:
branches: [main]
pull_request:
branches: [main]
jobs:
test-return:
@@ -39,7 +41,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/cache@v1
- uses: actions/cache@v2
with:
path: ~/.npm
key: ${{runner.os}}-npm-${{hashFiles('**/package-lock.json')}}
+8 -11
View File
@@ -1,10 +1,12 @@
name: Licensed
on:
push: {branches: main}
pull_request: {branches: main}
repository_dispatch:
workflow_dispatch:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
test:
@@ -12,16 +14,11 @@ jobs:
name: Check licenses
steps:
- 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
- name: Install licensed
run: |-
run: |
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 mv licensed /usr/local/bin/licensed
- run: licensed status
+1 -1
View File
@@ -2,7 +2,7 @@ name: Pull Request Test
on:
pull_request:
branches: main
branches: [main]
types: [opened, synchronize]
jobs:
Binary file not shown.
Binary file not shown.
+30 -6
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
- `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
- `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
requiring relative paths (relative to the current working directory) and
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
id: my-script
with:
github-token: ${{secrets.GITHUB_TOKEN}}
result-encoding: string
script: return "I will be string (not JSON) encoded!"
```
@@ -100,7 +100,6 @@ jobs:
steps:
- uses: actions/github-script@v4
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
github.issues.createComment({
issue_number: context.issue.number,
@@ -123,7 +122,6 @@ jobs:
steps:
- uses: actions/github-script@v4
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
github.issues.addLabels({
issue_number: context.issue.number,
@@ -144,7 +142,6 @@ jobs:
steps:
- uses: actions/github-script@v4
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
// Get a list of all issues created by the PR opener
// See: https://octokit.github.io/rest.js/#pagination
@@ -188,7 +185,6 @@ jobs:
steps:
- uses: actions/github-script@v4
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
const diff_url = context.payload.pull_request.diff_url
const result = await github.request(diff_url)
@@ -213,7 +209,6 @@ jobs:
steps:
- uses: actions/github-script@v4
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
const query = `query($owner:String!, $name:String!, $label:String!) {
repository(owner:$owner, name:$name){
@@ -356,3 +351,32 @@ jobs:
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']
})
```
+883 -142
View File
File diff suppressed because it is too large. Load diff
+3970 -6312
View File
File diff suppressed because it is too large. Load diff
+11 -10
View File
@@ -1,7 +1,7 @@
{
"name": "github-script",
"description": "A GitHub action for executing a simple script",
"version": "4.0.0",
"version": "4.0.2",
"author": "GitHub",
"license": "MIT",
"main": "dist/index.js",
@@ -35,7 +35,8 @@
}
},
"dependencies": {
"@actions/core": "^1.2.6",
"@actions/core": "^1.2.7",
"@actions/exec": "^1.1.0",
"@actions/github": "^4.0.0",
"@actions/glob": "^0.1.1",
"@actions/io": "^1.0.2",
@@ -44,17 +45,17 @@
"@octokit/plugin-rest-endpoint-methods": "4.2.1"
},
"devDependencies": {
"@types/jest": "^26.0.10",
"@typescript-eslint/eslint-plugin": "^3.9.1",
"@typescript-eslint/parser": "^3.9.1",
"@types/jest": "^26.0.24",
"@typescript-eslint/eslint-plugin": "^3.10.1",
"@typescript-eslint/parser": "^3.10.1",
"@vercel/ncc": "^0.23.0",
"eslint": "^7.7.0",
"eslint-config-prettier": "^6.11.0",
"eslint": "^7.32.0",
"eslint-config-prettier": "^6.15.0",
"husky": "^4.2.5",
"jest": "^26.4.1",
"jest": "^26.6.3",
"npm-run-all": "^4.1.5",
"prettier": "^2.0.5",
"ts-jest": "^26.2.0",
"typescript": "^4.0.2"
"ts-jest": "^26.5.6",
"typescript": "^4.3.5"
}
}
+2
View File
@@ -1,4 +1,5 @@
import * as core from '@actions/core'
import * as exec from '@actions/exec'
import {Context} from '@actions/github/lib/context'
import {GitHub} from '@actions/github/lib/utils'
import * as glob from '@actions/glob'
@@ -10,6 +11,7 @@ type AsyncFunctionArguments = {
context: Context
core: typeof core
github: InstanceType<typeof GitHub>
exec: typeof exec
glob: typeof glob
io: typeof io
require: NodeRequire
+2
View File
@@ -1,4 +1,5 @@
import * as core from '@actions/core'
import * as exec from '@actions/exec'
import {context, getOctokit} from '@actions/github'
import * as glob from '@actions/glob'
import * as io from '@actions/io'
@@ -36,6 +37,7 @@ async function main(): Promise<void> {
github,
context,
core,
exec,
glob,
io
},
+9 -13
View File
@@ -7,20 +7,16 @@ export const wrapRequire = new Proxy(__non_webpack_require__, {
return target.apply(thisArg, [moduleID])
}
try {
return target.apply(thisArg, [moduleID])
} catch (err) {
const modulePath = target.resolve.apply(thisArg, [
moduleID,
{
// Webpack does not have an escape hatch for getting the actual
// module, other than `eval`.
paths: eval('module').paths.concat(process.cwd())
}
])
const modulePath = target.resolve.apply(thisArg, [
moduleID,
{
// Webpack does not have an escape hatch for getting the actual
// module, other than `eval`.
paths: [process.cwd()]
}
])
return target.apply(thisArg, [modulePath])
}
return target.apply(thisArg, [modulePath])
},
get: (target, prop, receiver) => {