├── .github ├── FUNDING.yml ├── data │ ├── datafile.ini │ ├── run.txt │ └── table.md ├── tpl │ └── README.tpl.md └── workflows │ ├── generate.yml │ ├── major.yml │ ├── manual.yml │ ├── readme.yml │ ├── syncbase.yml │ └── test.yml ├── LICENSE ├── README.md ├── action.yml ├── conf ├── 11.4-gcc.conf ├── 11.4.conf ├── default.release.conf └── test.releases ├── index.js ├── node_modules ├── .bin │ └── uuid ├── .package-lock.json ├── @actions │ ├── core │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── lib │ │ │ ├── command.d.ts │ │ │ ├── command.js │ │ │ ├── command.js.map │ │ │ ├── core.d.ts │ │ │ ├── core.js │ │ │ ├── core.js.map │ │ │ ├── file-command.d.ts │ │ │ ├── file-command.js │ │ │ ├── file-command.js.map │ │ │ ├── oidc-utils.d.ts │ │ │ ├── oidc-utils.js │ │ │ ├── oidc-utils.js.map │ │ │ ├── path-utils.d.ts │ │ │ ├── path-utils.js │ │ │ ├── path-utils.js.map │ │ │ ├── summary.d.ts │ │ │ ├── summary.js │ │ │ ├── summary.js.map │ │ │ ├── utils.d.ts │ │ │ ├── utils.js │ │ │ └── utils.js.map │ │ └── package.json │ ├── exec │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── lib │ │ │ ├── exec.d.ts │ │ │ ├── exec.js │ │ │ ├── exec.js.map │ │ │ ├── interfaces.d.ts │ │ │ ├── interfaces.js │ │ │ ├── interfaces.js.map │ │ │ ├── toolrunner.d.ts │ │ │ ├── toolrunner.js │ │ │ └── toolrunner.js.map │ │ └── package.json │ ├── http-client │ │ ├── LICENSE │ │ ├── README.md │ │ ├── lib │ │ │ ├── auth.d.ts │ │ │ ├── auth.js │ │ │ ├── auth.js.map │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── index.js.map │ │ │ ├── interfaces.d.ts │ │ │ ├── interfaces.js │ │ │ ├── interfaces.js.map │ │ │ ├── proxy.d.ts │ │ │ ├── proxy.js │ │ │ └── proxy.js.map │ │ └── package.json │ └── io │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── lib │ │ ├── io-util.d.ts │ │ ├── io-util.js │ │ ├── io-util.js.map │ │ ├── io.d.ts │ │ ├── io.js │ │ └── io.js.map │ │ └── package.json ├── tunnel │ ├── .idea │ │ ├── encodings.xml │ │ ├── modules.xml │ │ ├── node-tunnel.iml │ │ ├── vcs.xml │ │ └── workspace.xml │ ├── .travis.yml │ ├── CHANGELOG.md │ ├── LICENSE │ ├── README.md │ ├── index.js │ ├── lib │ │ └── tunnel.js │ └── package.json └── uuid │ ├── CHANGELOG.md │ ├── CONTRIBUTING.md │ ├── LICENSE.md │ ├── README.md │ ├── dist │ ├── bin │ │ └── uuid │ ├── esm-browser │ │ ├── index.js │ │ ├── md5.js │ │ ├── nil.js │ │ ├── parse.js │ │ ├── regex.js │ │ ├── rng.js │ │ ├── sha1.js │ │ ├── stringify.js │ │ ├── v1.js │ │ ├── v3.js │ │ ├── v35.js │ │ ├── v4.js │ │ ├── v5.js │ │ ├── validate.js │ │ └── version.js │ ├── esm-node │ │ ├── index.js │ │ ├── md5.js │ │ ├── nil.js │ │ ├── parse.js │ │ ├── regex.js │ │ ├── rng.js │ │ ├── sha1.js │ │ ├── stringify.js │ │ ├── v1.js │ │ ├── v3.js │ │ ├── v35.js │ │ ├── v4.js │ │ ├── v5.js │ │ ├── validate.js │ │ └── version.js │ ├── index.js │ ├── md5-browser.js │ ├── md5.js │ ├── nil.js │ ├── parse.js │ ├── regex.js │ ├── rng-browser.js │ ├── rng.js │ ├── sha1-browser.js │ ├── sha1.js │ ├── stringify.js │ ├── umd │ │ ├── uuid.min.js │ │ ├── uuidNIL.min.js │ │ ├── uuidParse.min.js │ │ ├── uuidStringify.min.js │ │ ├── uuidValidate.min.js │ │ ├── uuidVersion.min.js │ │ ├── uuidv1.min.js │ │ ├── uuidv3.min.js │ │ ├── uuidv4.min.js │ │ └── uuidv5.min.js │ ├── uuid-bin.js │ ├── v1.js │ ├── v3.js │ ├── v35.js │ ├── v4.js │ ├── v5.js │ ├── validate.js │ └── version.js │ ├── package.json │ └── wrapper.mjs ├── package-lock.json ├── package.json └── run.sh /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: vmactions 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /.github/data/datafile.ini: -------------------------------------------------------------------------------- 1 | 2 | 3 | VM_NAME=Solaris 4 | 5 | VM_OS_NAME=solaris 6 | 7 | VM_RUNS_ON=ubuntu-latest 8 | 9 | VM_PREPARE="pkgutil -y -i socat" 10 | 11 | VM_RUN=@.github/data/run.txt 12 | 13 | VM_SET_RELEASE=11.4-gcc 14 | 15 | VM_SHELL_COMMENTS="" 16 | 17 | TEST_RELEASES=@conf/test.releases 18 | 19 | RELEASE_TABLE=@.github/data/table.md 20 | 21 | 22 | -------------------------------------------------------------------------------- /.github/data/run.txt: -------------------------------------------------------------------------------- 1 | if [ -n "test" ]; then 2 | echo "false" 3 | fi 4 | if [ "test" ]; then 5 | echo "test" 6 | fi 7 | pwd 8 | ls -lah 9 | whoami 10 | env 11 | psrinfo -vp 12 | cat /etc/release 13 | psrinfo -v 14 | echo "::memstat" | mdb -k 15 | echo "OK" -------------------------------------------------------------------------------- /.github/data/table.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | | Release | x86_64 | aarch64(arm64) | 4 | |---------|---------|---------| 5 | | 11.4 | ✅ | ❌ | 6 | | 11.4-gcc| ✅ | ❌ | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /.github/tpl/README.tpl.md: -------------------------------------------------------------------------------- 1 | # Run GitHub CI in {{VM_NAME}} ![Test](https://github.com/{{GITHUB_REPOSITORY}}/workflows/Test/badge.svg) 2 | 3 | Use this action to run your CI in {{VM_NAME}}. 4 | 5 | The github workflow only supports Ubuntu, Windows and MacOS. But what if you need to use {{VM_NAME}}? 6 | 7 | 8 | All the supported releases are here: 9 | 10 | {{RELEASE_TABLE}} 11 | 12 | 13 | 14 | 15 | ## 1. Example: `test.yml`: 16 | 17 | ```yml 18 | 19 | name: Test 20 | 21 | on: [push] 22 | 23 | jobs: 24 | test: 25 | runs-on: {{VM_RUNS_ON}} 26 | name: A job to run test in {{VM_NAME}} 27 | env: 28 | MYTOKEN : ${{ secrets.MYTOKEN }} 29 | MYTOKEN2: "value2" 30 | steps: 31 | - uses: actions/checkout@v4 32 | - name: Test in {{VM_NAME}} 33 | id: test 34 | uses: {{GITHUB_REPOSITORY}}@{{LATEST_MAJOR}} 35 | with: 36 | envs: 'MYTOKEN MYTOKEN2' 37 | usesh: true 38 | prepare: | 39 | {{VM_PREPARE}} 40 | 41 | run: | 42 | {{VM_RUN}} 43 | 44 | 45 | 46 | 47 | ``` 48 | 49 | 50 | The latest major version is: `{{LATEST_MAJOR}}`, which is the most recommended to use. (You can also use the latest full version: `{{LATEST_TAG}}`) 51 | 52 | 53 | If you are migrating from the previous `v0`, please change the `runs-on: ` to `runs-on: {{VM_RUNS_ON}}` 54 | 55 | 56 | The `envs: 'MYTOKEN MYTOKEN2'` is the env names that you want to pass into the vm. 57 | 58 | The `run: xxxxx` is the command you want to run in the vm. 59 | 60 | The env variables are all copied into the VM, and the source code and directory are all synchronized into the VM. 61 | 62 | The working dir for `run` in the VM is the same as in the Host machine. 63 | 64 | All the source code tree in the Host machine are mounted into the VM. 65 | 66 | All the `GITHUB_*` as well as `CI=true` env variables are passed into the VM. 67 | 68 | So, you will have the same directory and same default env variables when you `run` the CI script. 69 | 70 | {{VM_SHELL_COMMENTS}} 71 | 72 | 73 | 74 | ## 2. Share code 75 | 76 | The code is shared from the host to the VM via `rsync` by default, you can choose to use `sshfs` or `nfs` to share code instead. 77 | 78 | 79 | ``` 80 | 81 | ... 82 | 83 | steps: 84 | - uses: actions/checkout@v4 85 | - name: Test 86 | id: test 87 | uses: {{GITHUB_REPOSITORY}}@{{LATEST_MAJOR}} 88 | with: 89 | envs: 'MYTOKEN MYTOKEN2' 90 | usesh: true 91 | sync: sshfs # or: nfs 92 | prepare: | 93 | {{VM_PREPARE}} 94 | 95 | 96 | 97 | ... 98 | 99 | 100 | ``` 101 | 102 | You can also set `sync: no`, so the files will not be synced to the VM. 103 | 104 | 105 | When using `rsync`, you can define `copyback: false` to not copy files back from the VM in to the host. 106 | 107 | 108 | ``` 109 | 110 | ... 111 | 112 | steps: 113 | - uses: actions/checkout@v4 114 | - name: Test 115 | id: test 116 | uses: {{GITHUB_REPOSITORY}}@{{LATEST_MAJOR}} 117 | with: 118 | envs: 'MYTOKEN MYTOKEN2' 119 | usesh: true 120 | sync: rsync 121 | copyback: false 122 | prepare: | 123 | {{VM_PREPARE}} 124 | 125 | 126 | 127 | ... 128 | 129 | 130 | ``` 131 | 132 | 133 | ## 3. NAT from host runner to the VM 134 | 135 | You can add NAT port between the host and the VM. 136 | 137 | ``` 138 | ... 139 | steps: 140 | - uses: actions/checkout@v4 141 | - name: Test 142 | id: test 143 | uses: {{GITHUB_REPOSITORY}}@{{LATEST_MAJOR}} 144 | with: 145 | envs: 'MYTOKEN MYTOKEN2' 146 | usesh: true 147 | nat: | 148 | "8080": "80" 149 | "8443": "443" 150 | udp:"8081": "80" 151 | ... 152 | ``` 153 | 154 | 155 | ## 4. Set memory and cpu 156 | 157 | The default memory of the VM is 6144MB, you can use `mem` option to set the memory size: 158 | 159 | ``` 160 | ... 161 | steps: 162 | - uses: actions/checkout@v4 163 | - name: Test 164 | id: test 165 | uses: {{GITHUB_REPOSITORY}}@{{LATEST_MAJOR}} 166 | with: 167 | envs: 'MYTOKEN MYTOKEN2' 168 | usesh: true 169 | mem: 4096 170 | ... 171 | ``` 172 | 173 | 174 | The VM is using all the cpu cores of the host by default, you can use `cpu` option to change the cpu cores: 175 | 176 | ``` 177 | ... 178 | steps: 179 | - uses: actions/checkout@v4 180 | - name: Test 181 | id: test 182 | uses: {{GITHUB_REPOSITORY}}@{{LATEST_MAJOR}} 183 | with: 184 | envs: 'MYTOKEN MYTOKEN2' 185 | usesh: true 186 | cpu: 3 187 | ... 188 | ``` 189 | 190 | 191 | ## 5. Select release 192 | 193 | It uses [the {{VM_NAME}} {{DEFAULT_RELEASE}}](conf/default.release.conf) by default, you can use `release` option to use another version of {{VM_NAME}}: 194 | 195 | ``` 196 | ... 197 | steps: 198 | - uses: actions/checkout@v4 199 | - name: Test 200 | id: test 201 | uses: {{GITHUB_REPOSITORY}}@{{LATEST_MAJOR}} 202 | with: 203 | release: "{{VM_SET_RELEASE}}" 204 | ... 205 | ``` 206 | 207 | 208 | ## 6. Select architecture 209 | 210 | The vm is using x86_64(AMD64) by default, but you can use `arch` option to change the architecture: 211 | 212 | ``` 213 | ... 214 | steps: 215 | - uses: actions/checkout@v4 216 | - name: Test 217 | id: test 218 | uses: {{GITHUB_REPOSITORY}}@{{LATEST_MAJOR}} 219 | with: 220 | release: "{{VM_SET_RELEASE}}" 221 | arch: aarch64 222 | ... 223 | ``` 224 | 225 | 226 | 227 | 228 | ## 7. Custom shell 229 | 230 | Support custom shell: 231 | 232 | ``` 233 | ... 234 | steps: 235 | - uses: actions/checkout@v4 236 | - name: Start VM 237 | id: vm 238 | uses: {{GITHUB_REPOSITORY}}@{{LATEST_MAJOR}} 239 | with: 240 | sync: nfs 241 | - name: Custom shell step 1 242 | shell: {{VM_OS_NAME}} {0} 243 | run: | 244 | cd $GITHUB_WORKSPACE; 245 | pwd 246 | echo "this is step 1, running inside the VM" 247 | - name: Custom shell step 2 248 | shell: {{VM_OS_NAME}} {0} 249 | run: | 250 | cd $GITHUB_WORKSPACE; 251 | pwd 252 | echo "this is step 2, running inside the VM" 253 | ... 254 | ``` 255 | 256 | 257 | 258 | # Under the hood 259 | 260 | We use Qemu and Libvirt to run the {{VM_NAME}} VM. 261 | 262 | 263 | 264 | 265 | # Upcoming features: 266 | 267 | 1. Support s390x, or other architectures. 268 | 2. Support MacOS runner. 269 | 3. Support Linux ARM runner. 270 | 4. Get rid of Libvirt. 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | -------------------------------------------------------------------------------- /.github/workflows/generate.yml: -------------------------------------------------------------------------------- 1 | name: "Step 2, Generate the project from BaseVM" 2 | on: 3 | schedule: 4 | - cron: '10 1 * * *' 5 | workflow_dispatch: 6 | push: 7 | branches: 8 | - 'main' 9 | paths: 10 | - 'conf/*' 11 | - '.github/data/*' 12 | - '.github/workflows/generate.yml' 13 | 14 | 15 | jobs: 16 | generate: 17 | runs-on: ubuntu-latest 18 | steps: 19 | - uses: actions/checkout@v4 20 | with: 21 | token: ${{ secrets.VM_TOKEN }} 22 | fetch-depth: '2' 23 | - name: Get latest release 24 | id: get-latest-release 25 | uses: InsonusK/get-latest-release@v1.1.0 26 | with: 27 | myToken: ${{ github.token }} 28 | view_top: 1 29 | 30 | - name: Preparing env variables 31 | run: | 32 | git switch main || (git fetch --all && git checkout -b main origin/main) 33 | . conf/default.release.conf 34 | echo "DEFAULT_RELEASE=$DEFAULT_RELEASE" >> $GITHUB_ENV 35 | echo "ALL_RELEASES=\"$(ls conf/ | grep -v default | sed 's/.conf//g' | tr '\n' ',' | sed "s/,\$//" | sed 's/,/", "/g')\"" >> $GITHUB_ENV 36 | LATEST_TAG="${{ steps.get-latest-release.outputs.tag_name }}" 37 | echo "LATEST_TAG=${LATEST_TAG}" >> $GITHUB_ENV 38 | echo "LATEST_VERSION_NUMBER=${LATEST_TAG:1}" >> $GITHUB_ENV 39 | 40 | oldHash="$(cat .github/workflows/test.yml | grep -i "uses: ${{ github.repository }}" | head -1 | cut -d @ -f 2)" 41 | echo "OLD_HASH=${oldHash}" >> $GITHUB_ENV 42 | 43 | git clone https://github.com/vmactions/base-vm.git 44 | 45 | mkdir -p .github/tpl 46 | cat base-vm/.github/tpl/README.tpl.md >.github/tpl/README.tpl.md 47 | 48 | - name: Generate files 49 | uses: vmactions/template-render@v0.0.1 50 | with: 51 | datafile: .github/data/datafile.ini 52 | files: | 53 | base-vm/.github/tpl/test.tpl.yml : .github/workflows/test.yml 54 | base-vm/.github/tpl/manual.tpl.yml : .github/workflows/manual.yml 55 | base-vm/.github/FUNDING.yml : .github/FUNDING.yml 56 | base-vm/.github/workflows/readme.yml : .github/workflows/readme.yml 57 | base-vm/.github/workflows/major.yml : .github/workflows/major.yml 58 | base-vm/package.json : package.json 59 | base-vm/index.js : index.js 60 | base-vm/action.yml : action.yml 61 | base-vm/run.sh : run.sh 62 | 63 | - name: Update node_modules 64 | run: | 65 | [ -e "node_modules" ] && git rm -r node_modules 66 | npm install --save 67 | git add node_modules 68 | 69 | - name: Check modifications 70 | run: | 71 | #if only hash id in test.yml changes, skip 72 | currentHash="$(cat .github/workflows/test.yml | grep -i "uses: ${{ github.repository }}" | head -1 | cut -d @ -f 2)" 73 | echo "Current hash: $currentHash" 74 | lastHash="$(git rev-parse 'HEAD~1')" 75 | echo "Last hash: $lastHash" 76 | oldHash="$lastHash" 77 | echo "OLD_HASH: $OLD_HASH" 78 | echo "Old hash using last hash: $oldHash" 79 | git diff 80 | cp .github/workflows/test.yml test.yml.back 81 | sed -i "s/$currentHash/$oldHash/g" .github/workflows/test.yml 82 | if git diff --quiet; then 83 | echo "no changes" 84 | else 85 | #has changes: 86 | rm -f test.yml.back 87 | rm -rf base-vm 88 | #commit all changes and get new hash 89 | git config user.email "ghactions@vmactions.org" 90 | git config user.name "Generate.yml" 91 | git add . 92 | git commit -m "Generated from base-vm" 93 | newHash="$(git rev-parse main)" 94 | echo "New hash: $newHash" 95 | #modify test.yml 96 | sed -i "s/$oldHash/$newHash/g" .github/workflows/test.yml 97 | fi 98 | - uses: EndBug/add-and-commit@v9 99 | with: 100 | message: "Update from base vm" 101 | pull: '--rebase --autostash ' 102 | add: | 103 | .github/workflows/readme.yml 104 | .github/workflows/major.yml 105 | .github/workflows/manual.yml 106 | .github/workflows/test.yml 107 | .github/tpl/README.tpl.md 108 | .github/FUNDING.yml 109 | package.json 110 | package-lock.json 111 | index.js 112 | action.yml 113 | run.sh 114 | node_modules 115 | 116 | -------------------------------------------------------------------------------- /.github/workflows/major.yml: -------------------------------------------------------------------------------- 1 | name: Update Major Release Tag 2 | 3 | on: 4 | workflow_dispatch: 5 | push: 6 | tags: 7 | - "v*" 8 | 9 | jobs: 10 | update-majorver: 11 | name: Update Major Release Tag 12 | runs-on: ubuntu-latest 13 | steps: 14 | - uses: nowactions/update-majorver@v1 15 | -------------------------------------------------------------------------------- /.github/workflows/manual.yml: -------------------------------------------------------------------------------- 1 | name: "Manual" 2 | on: 3 | workflow_dispatch: 4 | 5 | 6 | jobs: 7 | build: 8 | runs-on: ubuntu-24.04 9 | env: 10 | DEBUG: 1 11 | NGROK_TOKEN : ${{ secrets.NGROK_TOKEN }} 12 | VM_RELEASE: ${{ secrets.VM_RELEASE }} 13 | SEC_VBOX : ${{ secrets.SEC_VBOX }} 14 | steps: 15 | - uses: actions/checkout@v4 16 | - uses: vmactions/cf-tunnel@v0 17 | id: tunnel 18 | with: 19 | protocol: http 20 | port: 8000 21 | - name: Run vnc tunnel 22 | id: test 23 | uses: vmactions/ngrok-tunnel@v0.0.1 24 | with: 25 | protocol: tcp 26 | port: 5900 27 | - name: Sleep 28 | run: | 29 | for i in $(seq 1 10) ; do echo $i; sleep 1; done 30 | touch /tmp/keepalive 31 | echo "=====================================" 32 | echo "please loin the SSH bellow, and run: " 33 | echo "bash run.sh importVM" 34 | echo "bash run.sh onBeforeStartVM " 35 | echo "bash run.sh startVM " 36 | echo "=====================================" 37 | 38 | - uses: neilpang/debugger-action@master 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /.github/workflows/readme.yml: -------------------------------------------------------------------------------- 1 | name: "Update Readme" 2 | on: 3 | workflow_dispatch: 4 | push: 5 | branches: 6 | - 'main' 7 | paths: 8 | - '.github/tpl/*' 9 | - '.github/data/*' 10 | - '.github/workflows/readme.yml' 11 | 12 | release: 13 | types: [ published ] 14 | 15 | 16 | jobs: 17 | readme: 18 | runs-on: ubuntu-latest 19 | steps: 20 | - uses: actions/checkout@v4 21 | 22 | - name: Get latest release 23 | id: get-latest-release 24 | uses: InsonusK/get-latest-release@v1.1.0 25 | with: 26 | myToken: ${{ github.token }} 27 | view_top: 1 28 | 29 | - name: Using main branch 30 | run: | 31 | git switch main || (git fetch --all && git checkout -b main origin/main) 32 | . conf/default.release.conf 33 | echo "DEFAULT_RELEASE=$DEFAULT_RELEASE" >> $GITHUB_ENV 34 | echo "LATEST_MAJOR=$(echo ${{ steps.get-latest-release.outputs.tag_name }} | cut -d . -f 1)" >> $GITHUB_ENV 35 | echo "LATEST_TAG=${{ steps.get-latest-release.outputs.tag_name }}" >> $GITHUB_ENV 36 | echo "ALL_RELEASES=$(ls conf/ | grep -v default | sed 's/.conf//g' | tr '\n' ',' | sed "s/,\$//" | sed 's/,/, /g')" >> $GITHUB_ENV 37 | 38 | - name: Update the readme.md 39 | uses: vmactions/render@v0.0.1 40 | with: 41 | datafile: .github/data/datafile.ini 42 | files: | 43 | .github/tpl/README.tpl.md : README.md 44 | 45 | - uses: EndBug/add-and-commit@v9 46 | with: 47 | message: "Update version to ${{ steps.get-latest-release.outputs.tag_name }}" 48 | pull: '--rebase --autostash ' 49 | add: | 50 | README.md 51 | 52 | -------------------------------------------------------------------------------- /.github/workflows/syncbase.yml: -------------------------------------------------------------------------------- 1 | name: "Step 1, Sync generate.yml from BaseVM" 2 | on: 3 | schedule: 4 | - cron: '0 1 * * *' 5 | workflow_dispatch: 6 | push: 7 | branches: 8 | - 'main' 9 | paths: 10 | - '.github/data/*' 11 | - 'conf/*' 12 | - '.github/workflows/syncbase.yml' 13 | 14 | 15 | jobs: 16 | sync: 17 | runs-on: ubuntu-latest 18 | steps: 19 | - uses: actions/checkout@v4 20 | with: 21 | token: ${{ secrets.VM_TOKEN }} 22 | - name: Get latest release 23 | id: get-latest-release 24 | uses: InsonusK/get-latest-release@v1.1.0 25 | with: 26 | myToken: ${{ github.token }} 27 | view_top: 1 28 | 29 | - name: Using main branch 30 | run: | 31 | git switch main || (git fetch --all && git checkout -b main origin/main) 32 | . conf/default.release.conf 33 | echo "DEFAULT_RELEASE=$DEFAULT_RELEASE" >> $GITHUB_ENV 34 | echo "ALL_RELEASES=\"$(ls conf/ | grep -v default | sed 's/.conf//g' | tr '\n' ',' | sed "s/,\$//" | sed 's/,/", "/g')\"" >> $GITHUB_ENV 35 | 36 | git clone https://github.com/vmactions/base-vm.git 37 | 38 | - name: Sync generate.yml 39 | uses: vmactions/render@v0.0.1 40 | env: 41 | LATEST_TAG: ${{ steps.get-latest-release.outputs.tag_name }} 42 | with: 43 | datafile: .github/data/datafile.ini 44 | files: | 45 | base-vm/.github/tpl/generate.tpl.yml : .github/workflows/generate.yml 46 | 47 | - uses: EndBug/add-and-commit@v9 48 | with: 49 | message: "Sync from https://github.com/vmactions/base-vm" 50 | pull: '--rebase --autostash ' 51 | add: | 52 | .github/workflows/generate.yml 53 | 54 | 55 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 GitHub Actions 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Run GitHub CI in Solaris ![Test](https://github.com/vmactions/solaris-vm/workflows/Test/badge.svg) 2 | 3 | Use this action to run your CI in Solaris. 4 | 5 | The github workflow only supports Ubuntu, Windows and MacOS. But what if you need to use Solaris? 6 | 7 | 8 | All the supported releases are here: 9 | 10 | 11 | 12 | | Release | x86_64 | aarch64(arm64) | 13 | |---------|---------|---------| 14 | | 11.4 | ✅ | ❌ | 15 | | 11.4-gcc| ✅ | ❌ | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | ## 1. Example: `test.yml`: 27 | 28 | ```yml 29 | 30 | name: Test 31 | 32 | on: [push] 33 | 34 | jobs: 35 | test: 36 | runs-on: ubuntu-latest 37 | name: A job to run test in Solaris 38 | env: 39 | MYTOKEN : ${{ secrets.MYTOKEN }} 40 | MYTOKEN2: "value2" 41 | steps: 42 | - uses: actions/checkout@v4 43 | - name: Test in Solaris 44 | id: test 45 | uses: vmactions/solaris-vm@v1 46 | with: 47 | envs: 'MYTOKEN MYTOKEN2' 48 | usesh: true 49 | prepare: | 50 | pkgutil -y -i socat 51 | 52 | run: | 53 | if [ -n "test" ]; then 54 | echo "false" 55 | fi 56 | if [ "test" ]; then 57 | echo "test" 58 | fi 59 | pwd 60 | ls -lah 61 | whoami 62 | env 63 | psrinfo -vp 64 | cat /etc/release 65 | psrinfo -v 66 | echo "::memstat" | mdb -k 67 | echo "OK" 68 | 69 | 70 | 71 | 72 | ``` 73 | 74 | 75 | The latest major version is: `v1`, which is the most recommended to use. (You can also use the latest full version: `v1.1.4`) 76 | 77 | 78 | If you are migrating from the previous `v0`, please change the `runs-on: ` to `runs-on: ubuntu-latest` 79 | 80 | 81 | The `envs: 'MYTOKEN MYTOKEN2'` is the env names that you want to pass into the vm. 82 | 83 | The `run: xxxxx` is the command you want to run in the vm. 84 | 85 | The env variables are all copied into the VM, and the source code and directory are all synchronized into the VM. 86 | 87 | The working dir for `run` in the VM is the same as in the Host machine. 88 | 89 | All the source code tree in the Host machine are mounted into the VM. 90 | 91 | All the `GITHUB_*` as well as `CI=true` env variables are passed into the VM. 92 | 93 | So, you will have the same directory and same default env variables when you `run` the CI script. 94 | 95 | 96 | 97 | 98 | 99 | ## 2. Share code 100 | 101 | The code is shared from the host to the VM via `rsync` by default, you can choose to use `sshfs` or `nfs` to share code instead. 102 | 103 | 104 | ``` 105 | 106 | ... 107 | 108 | steps: 109 | - uses: actions/checkout@v4 110 | - name: Test 111 | id: test 112 | uses: vmactions/solaris-vm@v1 113 | with: 114 | envs: 'MYTOKEN MYTOKEN2' 115 | usesh: true 116 | sync: sshfs # or: nfs 117 | prepare: | 118 | pkgutil -y -i socat 119 | 120 | 121 | 122 | ... 123 | 124 | 125 | ``` 126 | 127 | You can also set `sync: no`, so the files will not be synced to the VM. 128 | 129 | 130 | When using `rsync`, you can define `copyback: false` to not copy files back from the VM in to the host. 131 | 132 | 133 | ``` 134 | 135 | ... 136 | 137 | steps: 138 | - uses: actions/checkout@v4 139 | - name: Test 140 | id: test 141 | uses: vmactions/solaris-vm@v1 142 | with: 143 | envs: 'MYTOKEN MYTOKEN2' 144 | usesh: true 145 | sync: rsync 146 | copyback: false 147 | prepare: | 148 | pkgutil -y -i socat 149 | 150 | 151 | 152 | ... 153 | 154 | 155 | ``` 156 | 157 | 158 | ## 3. NAT from host runner to the VM 159 | 160 | You can add NAT port between the host and the VM. 161 | 162 | ``` 163 | ... 164 | steps: 165 | - uses: actions/checkout@v4 166 | - name: Test 167 | id: test 168 | uses: vmactions/solaris-vm@v1 169 | with: 170 | envs: 'MYTOKEN MYTOKEN2' 171 | usesh: true 172 | nat: | 173 | "8080": "80" 174 | "8443": "443" 175 | udp:"8081": "80" 176 | ... 177 | ``` 178 | 179 | 180 | ## 4. Set memory and cpu 181 | 182 | The default memory of the VM is 6144MB, you can use `mem` option to set the memory size: 183 | 184 | ``` 185 | ... 186 | steps: 187 | - uses: actions/checkout@v4 188 | - name: Test 189 | id: test 190 | uses: vmactions/solaris-vm@v1 191 | with: 192 | envs: 'MYTOKEN MYTOKEN2' 193 | usesh: true 194 | mem: 4096 195 | ... 196 | ``` 197 | 198 | 199 | The VM is using all the cpu cores of the host by default, you can use `cpu` option to change the cpu cores: 200 | 201 | ``` 202 | ... 203 | steps: 204 | - uses: actions/checkout@v4 205 | - name: Test 206 | id: test 207 | uses: vmactions/solaris-vm@v1 208 | with: 209 | envs: 'MYTOKEN MYTOKEN2' 210 | usesh: true 211 | cpu: 3 212 | ... 213 | ``` 214 | 215 | 216 | ## 5. Select release 217 | 218 | It uses [the Solaris 11.4](conf/default.release.conf) by default, you can use `release` option to use another version of Solaris: 219 | 220 | ``` 221 | ... 222 | steps: 223 | - uses: actions/checkout@v4 224 | - name: Test 225 | id: test 226 | uses: vmactions/solaris-vm@v1 227 | with: 228 | release: "11.4-gcc" 229 | ... 230 | ``` 231 | 232 | 233 | ## 6. Select architecture 234 | 235 | The vm is using x86_64(AMD64) by default, but you can use `arch` option to change the architecture: 236 | 237 | ``` 238 | ... 239 | steps: 240 | - uses: actions/checkout@v4 241 | - name: Test 242 | id: test 243 | uses: vmactions/solaris-vm@v1 244 | with: 245 | release: "11.4-gcc" 246 | arch: aarch64 247 | ... 248 | ``` 249 | 250 | 251 | 252 | 253 | ## 7. Custom shell 254 | 255 | Support custom shell: 256 | 257 | ``` 258 | ... 259 | steps: 260 | - uses: actions/checkout@v4 261 | - name: Start VM 262 | id: vm 263 | uses: vmactions/solaris-vm@v1 264 | with: 265 | sync: nfs 266 | - name: Custom shell step 1 267 | shell: solaris {0} 268 | run: | 269 | cd $GITHUB_WORKSPACE; 270 | pwd 271 | echo "this is step 1, running inside the VM" 272 | - name: Custom shell step 2 273 | shell: solaris {0} 274 | run: | 275 | cd $GITHUB_WORKSPACE; 276 | pwd 277 | echo "this is step 2, running inside the VM" 278 | ... 279 | ``` 280 | 281 | 282 | 283 | # Under the hood 284 | 285 | We use Qemu and Libvirt to run the Solaris VM. 286 | 287 | 288 | 289 | 290 | # Upcoming features: 291 | 292 | 1. Support s390x, or other architectures. 293 | 2. Support MacOS runner. 294 | 3. Support Linux ARM runner. 295 | 4. Get rid of Libvirt. 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | -------------------------------------------------------------------------------- /action.yml: -------------------------------------------------------------------------------- 1 | name: 'Solaris-vm' 2 | description: 'Run CI in Solaris for GitHub Actions' 3 | inputs: 4 | prepare: 5 | description: 'Install some tools before CI runs' 6 | required: false 7 | run: 8 | description: 'The CI command to run' 9 | required: true 10 | release: 11 | description: 'The release version of Solaris vm' 12 | required: false 13 | arch: 14 | description: 'The cpu architecture of Solaris vm' 15 | required: false 16 | envs: 17 | description: 'The envs to pass into Solaris vm' 18 | required: false 19 | mem: 20 | description: 'Set the memory size of the vm' 21 | required: false 22 | cpu: 23 | description: 'Set the cpu cores of the vm' 24 | required: false 25 | nat: 26 | description: 'The NAT ports to Solaris vm' 27 | required: false 28 | usesh: 29 | description: 'Use sh instead of the default shell: csh' 30 | required: false 31 | sync: 32 | description: 'How to synchronize the source code to/from the VM, Values can be: rsync(default), and sshfs' 33 | required: false 34 | copyback: 35 | description: 'whether or not to copy the build result repo back from the VM to the host Mac OS, defalt is True' 36 | required: false 37 | branding: 38 | icon: 'activity' 39 | color: 'green' 40 | 41 | runs: 42 | using: 'node20' 43 | main: 'index.js' 44 | -------------------------------------------------------------------------------- /conf/11.4-gcc.conf: -------------------------------------------------------------------------------- 1 | 2 | BUILDER_VERSION=1.0.6 3 | 4 | CONF_LINK="https://raw.githubusercontent.com/vmactions/solaris-builder/v${BUILDER_VERSION}/conf/solaris-${VM_RELEASE}.conf" 5 | 6 | OVA_LINK="https://github.com/vmactions/solaris-builder/releases/download/v${BUILDER_VERSION}/solaris-${VM_RELEASE}.qcow2.zst" 7 | 8 | VM_PUBID_LINK="https://github.com/vmactions/solaris-builder/releases/download/v${BUILDER_VERSION}/solaris-${VM_RELEASE}-id_rsa.pub" 9 | 10 | HOST_ID_LINK="https://github.com/vmactions/solaris-builder/releases/download/v${BUILDER_VERSION}/solaris-${VM_RELEASE}-host.id_rsa" 11 | 12 | 13 | VM_VBOX_LINK="https://raw.githubusercontent.com/vmactions/vbox/v1.1.1/vbox.sh" 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /conf/11.4.conf: -------------------------------------------------------------------------------- 1 | 2 | BUILDER_VERSION=1.0.6 3 | 4 | CONF_LINK="https://raw.githubusercontent.com/vmactions/solaris-builder/v${BUILDER_VERSION}/conf/solaris-${VM_RELEASE}.conf" 5 | 6 | OVA_LINK="https://github.com/vmactions/solaris-builder/releases/download/v${BUILDER_VERSION}/solaris-${VM_RELEASE}.qcow2.zst" 7 | 8 | VM_PUBID_LINK="https://github.com/vmactions/solaris-builder/releases/download/v${BUILDER_VERSION}/solaris-${VM_RELEASE}-id_rsa.pub" 9 | 10 | HOST_ID_LINK="https://github.com/vmactions/solaris-builder/releases/download/v${BUILDER_VERSION}/solaris-${VM_RELEASE}-host.id_rsa" 11 | 12 | 13 | 14 | VM_VBOX_LINK="https://raw.githubusercontent.com/vmactions/vbox/v1.1.1/vbox.sh" 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /conf/default.release.conf: -------------------------------------------------------------------------------- 1 | DEFAULT_RELEASE=11.4 -------------------------------------------------------------------------------- /conf/test.releases: -------------------------------------------------------------------------------- 1 | "11.4","11.4-gcc" -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | const core = require('@actions/core'); 2 | const exec = require('@actions/exec'); 3 | const fs = require("fs"); 4 | const path = require("path"); 5 | const os = require('os'); 6 | 7 | 8 | var workingDir = __dirname; 9 | 10 | async function execSSH(cmd, desp = "") { 11 | core.info(desp); 12 | core.info("exec ssh: " + cmd); 13 | await exec.exec("bash " + workingDir + "/run.sh execSSH", [], { input: cmd }); 14 | } 15 | 16 | async function execSSHSH(cmd, desp = "") { 17 | core.info(desp); 18 | core.info("exec ssh: " + cmd); 19 | await exec.exec("bash " + workingDir + "/run.sh execSSHSH", [], { input: cmd }); 20 | } 21 | 22 | async function shell(cmd, cdToScriptHome = true) { 23 | core.info("exec shell: " + cmd); 24 | if(cdToScriptHome) { 25 | await exec.exec("bash", [], { input: "cd " + workingDir + " && (" + cmd + ")" }); 26 | } else { 27 | await exec.exec("bash", [], { input: cmd }); 28 | } 29 | 30 | 31 | } 32 | 33 | 34 | async function setup(nat, mem, cpu) { 35 | try { 36 | core.startGroup("Importing VM"); 37 | if(!cpu) { 38 | cpu = os.cpus().length;//use the system all cores 39 | } 40 | core.info("Use cpu: " + cpu); 41 | 42 | 43 | await shell("bash run.sh importVM '" + mem + "' '" + cpu + "'"); 44 | core.endGroup(); 45 | 46 | 47 | core.startGroup("Run onBeforeStartVM"); 48 | await shell("bash run.sh onBeforeStartVM " ); 49 | core.endGroup(); 50 | 51 | 52 | core.startGroup("Run startVM"); 53 | await shell("bash run.sh startVM " ); 54 | 55 | core.info("First boot"); 56 | 57 | await shell("bash run.sh waitForVMReady"); 58 | core.endGroup(); 59 | 60 | core.startGroup("Run onStarted in VM"); 61 | 62 | if (nat) { 63 | let nats = nat.split("\n").filter(x => x !== ""); 64 | for (let element of nats) { 65 | core.info("Add nat: " + element); 66 | let segs = element.split(":"); 67 | if (segs.length === 3) { 68 | //udp:"8081": "80" 69 | let proto = segs[0].trim().trim('"'); 70 | let hostPort = segs[1].trim().trim('"'); 71 | let vmPort = segs[2].trim().trim('"'); 72 | 73 | await shell("bash run.sh addNAT " + proto + " " + hostPort + " " + vmPort); 74 | 75 | } else if (segs.length === 2) { 76 | let proto = "tcp" 77 | let hostPort = segs[0].trim().trim('"'); 78 | let vmPort = segs[1].trim().trim('"'); 79 | await shell("bash run.sh addNAT " + proto + " " + hostPort + " " + vmPort); 80 | } 81 | }; 82 | } 83 | 84 | 85 | await shell("bash run.sh onStarted" ); 86 | core.endGroup(); 87 | 88 | core.startGroup("Initialize files in VM"); 89 | let cmd1 = "mkdir -p " + process.env["HOME"] + "/work && ln -s " + process.env["HOME"] + "/work/ work"; 90 | await execSSH(cmd1, "Setting up VM"); 91 | 92 | let sync = core.getInput("sync"); 93 | if(sync == "no") { 94 | core.info("Don't sync files, OK"); 95 | } else if (sync == "sshfs") { 96 | core.info("Setup sshfs"); 97 | await shell("bash run.sh runSSHFSInVM"); 98 | } else if (sync == "nfs") { 99 | core.info("Setup nfs"); 100 | await shell("bash run.sh runNFSInVM"); 101 | } else { 102 | await shell("bash run.sh installRsyncInVM"); 103 | await shell("bash run.sh rsyncToVM"); 104 | } 105 | 106 | core.info("OK, Ready!"); 107 | core.endGroup(); 108 | 109 | } 110 | catch (error) { 111 | try { 112 | await shell("bash run.sh showDebugInfo"); 113 | } catch(ex){} 114 | core.setFailed(error.message); 115 | throw error; 116 | } 117 | } 118 | 119 | 120 | 121 | async function main() { 122 | let debug = core.getInput("debug"); 123 | process.env.DEBUG = debug; 124 | let release = core.getInput("release"); 125 | core.info("release: " + release); 126 | if(release) { 127 | process.env.VM_RELEASE=release; 128 | } 129 | 130 | let arch = core.getInput("arch"); 131 | core.info("arch: " + arch); 132 | if(arch) { 133 | process.env.VM_ARCH=arch; 134 | } 135 | 136 | let nat = core.getInput("nat"); 137 | core.info("nat: " + nat); 138 | 139 | let mem = core.getInput("mem"); 140 | core.info("mem: " + mem); 141 | 142 | let cpu = core.getInput("cpu"); 143 | core.info("cpu: " + cpu); 144 | 145 | await setup(nat, mem, cpu); 146 | 147 | var envs = core.getInput("envs"); 148 | console.log("envs:" + envs); 149 | 150 | if (envs) { 151 | fs.appendFileSync(path.join(process.env["HOME"], "/.ssh/config"), "SendEnv " + envs + "\n"); 152 | } 153 | 154 | core.startGroup("Run onInitialized in VM"); 155 | await shell("bash run.sh onInitialized" ); 156 | core.endGroup(); 157 | 158 | core.startGroup("Run 'prepare' in VM"); 159 | 160 | var usesh = core.getInput("usesh").toLowerCase() == "true"; 161 | 162 | var prepare = core.getInput("prepare"); 163 | if (prepare) { 164 | core.info("Running prepare: " + prepare); 165 | if (usesh) { 166 | await execSSHSH(prepare); 167 | } else { 168 | await execSSH(prepare); 169 | } 170 | 171 | } 172 | 173 | core.endGroup(); 174 | 175 | core.startGroup("Run 'run' in VM"); 176 | var run = core.getInput("run"); 177 | console.log("run: " + run); 178 | 179 | 180 | var error = null; 181 | try { 182 | if(run) { 183 | if (usesh) { 184 | await execSSHSH("cd $GITHUB_WORKSPACE;\n" + run); 185 | } else { 186 | await execSSH("cd $GITHUB_WORKSPACE;\n" + run); 187 | } 188 | } 189 | } catch (err) { 190 | error = err; 191 | try { 192 | await shell("bash run.sh showDebugInfo"); 193 | } catch(ex){} 194 | } finally { 195 | core.endGroup(); 196 | 197 | 198 | let copyback = core.getInput("copyback"); 199 | if(copyback !== "false") { 200 | core.startGroup("Copy files back from the VM"); 201 | let sync = core.getInput("sync"); 202 | if(sync == "no") { 203 | core.info("don't get back by rsync"); 204 | } else if (sync != "sshfs" && sync != "nfs") { 205 | core.info("get back by rsync"); 206 | await exec.exec("bash " + workingDir + "/run.sh rsyncBackFromVM"); 207 | } 208 | core.endGroup(); 209 | } 210 | if(error) { 211 | core.setFailed(error.message); 212 | process.exit(1); 213 | } else { 214 | process.exit(0); 215 | } 216 | } 217 | } 218 | 219 | 220 | 221 | main().catch(ex => { 222 | core.setFailed(ex.message); 223 | }); 224 | 225 | -------------------------------------------------------------------------------- /node_modules/.bin/uuid: -------------------------------------------------------------------------------- 1 | ../uuid/dist/bin/uuid -------------------------------------------------------------------------------- /node_modules/.package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vmactions-Solaris", 3 | "version": "1.1.4", 4 | "lockfileVersion": 3, 5 | "requires": true, 6 | "packages": { 7 | "node_modules/@actions/core": { 8 | "version": "1.9.1", 9 | "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.9.1.tgz", 10 | "integrity": "sha512-5ad+U2YGrmmiw6du20AQW5XuWo7UKN2052FjSV7MX+Wfjf8sCqcsZe62NfgHys4QI4/Y+vQvLKYL8jWtA1ZBTA==", 11 | "dependencies": { 12 | "@actions/http-client": "^2.0.1", 13 | "uuid": "^8.3.2" 14 | } 15 | }, 16 | "node_modules/@actions/exec": { 17 | "version": "1.1.1", 18 | "resolved": "https://registry.npmjs.org/@actions/exec/-/exec-1.1.1.tgz", 19 | "integrity": "sha512-+sCcHHbVdk93a0XT19ECtO/gIXoxvdsgQLzb2fE2/5sIZmWQuluYyjPQtrtTHdU1YzTZ7bAPN4sITq2xi1679w==", 20 | "dependencies": { 21 | "@actions/io": "^1.0.1" 22 | } 23 | }, 24 | "node_modules/@actions/http-client": { 25 | "version": "2.0.1", 26 | "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.0.1.tgz", 27 | "integrity": "sha512-PIXiMVtz6VvyaRsGY268qvj57hXQEpsYogYOu2nrQhlf+XCGmZstmuZBbAybUl1nQGnvS1k1eEsQ69ZoD7xlSw==", 28 | "dependencies": { 29 | "tunnel": "^0.0.6" 30 | } 31 | }, 32 | "node_modules/@actions/io": { 33 | "version": "1.1.2", 34 | "resolved": "https://registry.npmjs.org/@actions/io/-/io-1.1.2.tgz", 35 | "integrity": "sha512-d+RwPlMp+2qmBfeLYPLXuSRykDIFEwdTA0MMxzS9kh4kvP1ftrc/9fzy6pX6qAjthdXruHQ6/6kjT/DNo5ALuw==" 36 | }, 37 | "node_modules/tunnel": { 38 | "version": "0.0.6", 39 | "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", 40 | "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", 41 | "engines": { 42 | "node": ">=0.6.11 <=0.7.0 || >=0.7.3" 43 | } 44 | }, 45 | "node_modules/uuid": { 46 | "version": "8.3.2", 47 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", 48 | "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", 49 | "bin": { 50 | "uuid": "dist/bin/uuid" 51 | } 52 | } 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /node_modules/@actions/core/LICENSE.md: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright 2019 GitHub 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 6 | 7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/command.d.ts: -------------------------------------------------------------------------------- 1 | export interface CommandProperties { 2 | [key: string]: any; 3 | } 4 | /** 5 | * Commands 6 | * 7 | * Command Format: 8 | * ::name key=value,key=value::message 9 | * 10 | * Examples: 11 | * ::warning::This is the message 12 | * ::set-env name=MY_VAR::some value 13 | */ 14 | export declare function issueCommand(command: string, properties: CommandProperties, message: any): void; 15 | export declare function issue(name: string, message?: string): void; 16 | -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/command.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { 3 | if (k2 === undefined) k2 = k; 4 | Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); 5 | }) : (function(o, m, k, k2) { 6 | if (k2 === undefined) k2 = k; 7 | o[k2] = m[k]; 8 | })); 9 | var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { 10 | Object.defineProperty(o, "default", { enumerable: true, value: v }); 11 | }) : function(o, v) { 12 | o["default"] = v; 13 | }); 14 | var __importStar = (this && this.__importStar) || function (mod) { 15 | if (mod && mod.__esModule) return mod; 16 | var result = {}; 17 | if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); 18 | __setModuleDefault(result, mod); 19 | return result; 20 | }; 21 | Object.defineProperty(exports, "__esModule", { value: true }); 22 | exports.issue = exports.issueCommand = void 0; 23 | const os = __importStar(require("os")); 24 | const utils_1 = require("./utils"); 25 | /** 26 | * Commands 27 | * 28 | * Command Format: 29 | * ::name key=value,key=value::message 30 | * 31 | * Examples: 32 | * ::warning::This is the message 33 | * ::set-env name=MY_VAR::some value 34 | */ 35 | function issueCommand(command, properties, message) { 36 | const cmd = new Command(command, properties, message); 37 | process.stdout.write(cmd.toString() + os.EOL); 38 | } 39 | exports.issueCommand = issueCommand; 40 | function issue(name, message = '') { 41 | issueCommand(name, {}, message); 42 | } 43 | exports.issue = issue; 44 | const CMD_STRING = '::'; 45 | class Command { 46 | constructor(command, properties, message) { 47 | if (!command) { 48 | command = 'missing.command'; 49 | } 50 | this.command = command; 51 | this.properties = properties; 52 | this.message = message; 53 | } 54 | toString() { 55 | let cmdStr = CMD_STRING + this.command; 56 | if (this.properties && Object.keys(this.properties).length > 0) { 57 | cmdStr += ' '; 58 | let first = true; 59 | for (const key in this.properties) { 60 | if (this.properties.hasOwnProperty(key)) { 61 | const val = this.properties[key]; 62 | if (val) { 63 | if (first) { 64 | first = false; 65 | } 66 | else { 67 | cmdStr += ','; 68 | } 69 | cmdStr += `${key}=${escapeProperty(val)}`; 70 | } 71 | } 72 | } 73 | } 74 | cmdStr += `${CMD_STRING}${escapeData(this.message)}`; 75 | return cmdStr; 76 | } 77 | } 78 | function escapeData(s) { 79 | return utils_1.toCommandValue(s) 80 | .replace(/%/g, '%25') 81 | .replace(/\r/g, '%0D') 82 | .replace(/\n/g, '%0A'); 83 | } 84 | function escapeProperty(s) { 85 | return utils_1.toCommandValue(s) 86 | .replace(/%/g, '%25') 87 | .replace(/\r/g, '%0D') 88 | .replace(/\n/g, '%0A') 89 | .replace(/:/g, '%3A') 90 | .replace(/,/g, '%2C'); 91 | } 92 | //# sourceMappingURL=command.js.map -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/command.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"command.js","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAwB;AACxB,mCAAsC;AAWtC;;;;;;;;;GASG;AACH,SAAgB,YAAY,CAC1B,OAAe,EACf,UAA6B,EAC7B,OAAY;IAEZ,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;IACrD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;AAC/C,CAAC;AAPD,oCAOC;AAED,SAAgB,KAAK,CAAC,IAAY,EAAE,OAAO,GAAG,EAAE;IAC9C,YAAY,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;AACjC,CAAC;AAFD,sBAEC;AAED,MAAM,UAAU,GAAG,IAAI,CAAA;AAEvB,MAAM,OAAO;IAKX,YAAY,OAAe,EAAE,UAA6B,EAAE,OAAe;QACzE,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,GAAG,iBAAiB,CAAA;SAC5B;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAED,QAAQ;QACN,IAAI,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC,OAAO,CAAA;QAEtC,IAAI,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9D,MAAM,IAAI,GAAG,CAAA;YACb,IAAI,KAAK,GAAG,IAAI,CAAA;YAChB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE;gBACjC,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;oBACvC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;oBAChC,IAAI,GAAG,EAAE;wBACP,IAAI,KAAK,EAAE;4BACT,KAAK,GAAG,KAAK,CAAA;yBACd;6BAAM;4BACL,MAAM,IAAI,GAAG,CAAA;yBACd;wBAED,MAAM,IAAI,GAAG,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAA;qBAC1C;iBACF;aACF;SACF;QAED,MAAM,IAAI,GAAG,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAA;QACpD,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAED,SAAS,UAAU,CAAC,CAAM;IACxB,OAAO,sBAAc,CAAC,CAAC,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AAC1B,CAAC;AAED,SAAS,cAAc,CAAC,CAAM;IAC5B,OAAO,sBAAc,CAAC,CAAC,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;AACzB,CAAC"} -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/core.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"} -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/file-command.d.ts: -------------------------------------------------------------------------------- 1 | export declare function issueCommand(command: string, message: any): void; 2 | -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/file-command.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | // For internal use, subject to change. 3 | var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { 4 | if (k2 === undefined) k2 = k; 5 | Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); 6 | }) : (function(o, m, k, k2) { 7 | if (k2 === undefined) k2 = k; 8 | o[k2] = m[k]; 9 | })); 10 | var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { 11 | Object.defineProperty(o, "default", { enumerable: true, value: v }); 12 | }) : function(o, v) { 13 | o["default"] = v; 14 | }); 15 | var __importStar = (this && this.__importStar) || function (mod) { 16 | if (mod && mod.__esModule) return mod; 17 | var result = {}; 18 | if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); 19 | __setModuleDefault(result, mod); 20 | return result; 21 | }; 22 | Object.defineProperty(exports, "__esModule", { value: true }); 23 | exports.issueCommand = void 0; 24 | // We use any as a valid input type 25 | /* eslint-disable @typescript-eslint/no-explicit-any */ 26 | const fs = __importStar(require("fs")); 27 | const os = __importStar(require("os")); 28 | const utils_1 = require("./utils"); 29 | function issueCommand(command, message) { 30 | const filePath = process.env[`GITHUB_${command}`]; 31 | if (!filePath) { 32 | throw new Error(`Unable to find environment variable for file command ${command}`); 33 | } 34 | if (!fs.existsSync(filePath)) { 35 | throw new Error(`Missing file at path: ${filePath}`); 36 | } 37 | fs.appendFileSync(filePath, `${utils_1.toCommandValue(message)}${os.EOL}`, { 38 | encoding: 'utf8' 39 | }); 40 | } 41 | exports.issueCommand = issueCommand; 42 | //# sourceMappingURL=file-command.js.map -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/file-command.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"file-command.js","sourceRoot":"","sources":["../src/file-command.ts"],"names":[],"mappings":";AAAA,uCAAuC;;;;;;;;;;;;;;;;;;;;;;AAEvC,mCAAmC;AACnC,uDAAuD;AAEvD,uCAAwB;AACxB,uCAAwB;AACxB,mCAAsC;AAEtC,SAAgB,YAAY,CAAC,OAAe,EAAE,OAAY;IACxD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,OAAO,EAAE,CAAC,CAAA;IACjD,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CACb,wDAAwD,OAAO,EAAE,CAClE,CAAA;KACF;IACD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QAC5B,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,EAAE,CAAC,CAAA;KACrD;IAED,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,GAAG,sBAAc,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE;QACjE,QAAQ,EAAE,MAAM;KACjB,CAAC,CAAA;AACJ,CAAC;AAdD,oCAcC"} -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/oidc-utils.d.ts: -------------------------------------------------------------------------------- 1 | export declare class OidcClient { 2 | private static createHttpClient; 3 | private static getRequestToken; 4 | private static getIDTokenUrl; 5 | private static getCall; 6 | static getIDToken(audience?: string): Promise; 7 | } 8 | -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/oidc-utils.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { 3 | function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } 4 | return new (P || (P = Promise))(function (resolve, reject) { 5 | function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } 6 | function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } 7 | function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } 8 | step((generator = generator.apply(thisArg, _arguments || [])).next()); 9 | }); 10 | }; 11 | Object.defineProperty(exports, "__esModule", { value: true }); 12 | exports.OidcClient = void 0; 13 | const http_client_1 = require("@actions/http-client"); 14 | const auth_1 = require("@actions/http-client/lib/auth"); 15 | const core_1 = require("./core"); 16 | class OidcClient { 17 | static createHttpClient(allowRetry = true, maxRetry = 10) { 18 | const requestOptions = { 19 | allowRetries: allowRetry, 20 | maxRetries: maxRetry 21 | }; 22 | return new http_client_1.HttpClient('actions/oidc-client', [new auth_1.BearerCredentialHandler(OidcClient.getRequestToken())], requestOptions); 23 | } 24 | static getRequestToken() { 25 | const token = process.env['ACTIONS_ID_TOKEN_REQUEST_TOKEN']; 26 | if (!token) { 27 | throw new Error('Unable to get ACTIONS_ID_TOKEN_REQUEST_TOKEN env variable'); 28 | } 29 | return token; 30 | } 31 | static getIDTokenUrl() { 32 | const runtimeUrl = process.env['ACTIONS_ID_TOKEN_REQUEST_URL']; 33 | if (!runtimeUrl) { 34 | throw new Error('Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable'); 35 | } 36 | return runtimeUrl; 37 | } 38 | static getCall(id_token_url) { 39 | var _a; 40 | return __awaiter(this, void 0, void 0, function* () { 41 | const httpclient = OidcClient.createHttpClient(); 42 | const res = yield httpclient 43 | .getJson(id_token_url) 44 | .catch(error => { 45 | throw new Error(`Failed to get ID Token. \n 46 | Error Code : ${error.statusCode}\n 47 | Error Message: ${error.result.message}`); 48 | }); 49 | const id_token = (_a = res.result) === null || _a === void 0 ? void 0 : _a.value; 50 | if (!id_token) { 51 | throw new Error('Response json body do not have ID Token field'); 52 | } 53 | return id_token; 54 | }); 55 | } 56 | static getIDToken(audience) { 57 | return __awaiter(this, void 0, void 0, function* () { 58 | try { 59 | // New ID Token is requested from action service 60 | let id_token_url = OidcClient.getIDTokenUrl(); 61 | if (audience) { 62 | const encodedAudience = encodeURIComponent(audience); 63 | id_token_url = `${id_token_url}&audience=${encodedAudience}`; 64 | } 65 | core_1.debug(`ID token url is ${id_token_url}`); 66 | const id_token = yield OidcClient.getCall(id_token_url); 67 | core_1.setSecret(id_token); 68 | return id_token; 69 | } 70 | catch (error) { 71 | throw new Error(`Error message: ${error.message}`); 72 | } 73 | }); 74 | } 75 | } 76 | exports.OidcClient = OidcClient; 77 | //# sourceMappingURL=oidc-utils.js.map -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/oidc-utils.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"oidc-utils.js","sourceRoot":"","sources":["../src/oidc-utils.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,sDAA+C;AAC/C,wDAAqE;AACrE,iCAAuC;AAKvC,MAAa,UAAU;IACb,MAAM,CAAC,gBAAgB,CAC7B,UAAU,GAAG,IAAI,EACjB,QAAQ,GAAG,EAAE;QAEb,MAAM,cAAc,GAAmB;YACrC,YAAY,EAAE,UAAU;YACxB,UAAU,EAAE,QAAQ;SACrB,CAAA;QAED,OAAO,IAAI,wBAAU,CACnB,qBAAqB,EACrB,CAAC,IAAI,8BAAuB,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC,EAC3D,cAAc,CACf,CAAA;IACH,CAAC;IAEO,MAAM,CAAC,eAAe;QAC5B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAA;QAC3D,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAA;SACF;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,MAAM,CAAC,aAAa;QAC1B,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAA;QAC9D,IAAI,CAAC,UAAU,EAAE;YACf,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAA;SAC3E;QACD,OAAO,UAAU,CAAA;IACnB,CAAC;IAEO,MAAM,CAAO,OAAO,CAAC,YAAoB;;;YAC/C,MAAM,UAAU,GAAG,UAAU,CAAC,gBAAgB,EAAE,CAAA;YAEhD,MAAM,GAAG,GAAG,MAAM,UAAU;iBACzB,OAAO,CAAgB,YAAY,CAAC;iBACpC,KAAK,CAAC,KAAK,CAAC,EAAE;gBACb,MAAM,IAAI,KAAK,CACb;uBACa,KAAK,CAAC,UAAU;yBACd,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CACtC,CAAA;YACH,CAAC,CAAC,CAAA;YAEJ,MAAM,QAAQ,SAAG,GAAG,CAAC,MAAM,0CAAE,KAAK,CAAA;YAClC,IAAI,CAAC,QAAQ,EAAE;gBACb,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;aACjE;YACD,OAAO,QAAQ,CAAA;;KAChB;IAED,MAAM,CAAO,UAAU,CAAC,QAAiB;;YACvC,IAAI;gBACF,gDAAgD;gBAChD,IAAI,YAAY,GAAW,UAAU,CAAC,aAAa,EAAE,CAAA;gBACrD,IAAI,QAAQ,EAAE;oBACZ,MAAM,eAAe,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAA;oBACpD,YAAY,GAAG,GAAG,YAAY,aAAa,eAAe,EAAE,CAAA;iBAC7D;gBAED,YAAK,CAAC,mBAAmB,YAAY,EAAE,CAAC,CAAA;gBAExC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;gBACvD,gBAAS,CAAC,QAAQ,CAAC,CAAA;gBACnB,OAAO,QAAQ,CAAA;aAChB;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,IAAI,KAAK,CAAC,kBAAkB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;aACnD;QACH,CAAC;KAAA;CACF;AAzED,gCAyEC"} -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/path-utils.d.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * toPosixPath converts the given path to the posix form. On Windows, \\ will be 3 | * replaced with /. 4 | * 5 | * @param pth. Path to transform. 6 | * @return string Posix path. 7 | */ 8 | export declare function toPosixPath(pth: string): string; 9 | /** 10 | * toWin32Path converts the given path to the win32 form. On Linux, / will be 11 | * replaced with \\. 12 | * 13 | * @param pth. Path to transform. 14 | * @return string Win32 path. 15 | */ 16 | export declare function toWin32Path(pth: string): string; 17 | /** 18 | * toPlatformPath converts the given path to a platform-specific path. It does 19 | * this by replacing instances of / and \ with the platform-specific path 20 | * separator. 21 | * 22 | * @param pth The path to platformize. 23 | * @return string The platform-specific path. 24 | */ 25 | export declare function toPlatformPath(pth: string): string; 26 | -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/path-utils.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { 3 | if (k2 === undefined) k2 = k; 4 | Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); 5 | }) : (function(o, m, k, k2) { 6 | if (k2 === undefined) k2 = k; 7 | o[k2] = m[k]; 8 | })); 9 | var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { 10 | Object.defineProperty(o, "default", { enumerable: true, value: v }); 11 | }) : function(o, v) { 12 | o["default"] = v; 13 | }); 14 | var __importStar = (this && this.__importStar) || function (mod) { 15 | if (mod && mod.__esModule) return mod; 16 | var result = {}; 17 | if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); 18 | __setModuleDefault(result, mod); 19 | return result; 20 | }; 21 | Object.defineProperty(exports, "__esModule", { value: true }); 22 | exports.toPlatformPath = exports.toWin32Path = exports.toPosixPath = void 0; 23 | const path = __importStar(require("path")); 24 | /** 25 | * toPosixPath converts the given path to the posix form. On Windows, \\ will be 26 | * replaced with /. 27 | * 28 | * @param pth. Path to transform. 29 | * @return string Posix path. 30 | */ 31 | function toPosixPath(pth) { 32 | return pth.replace(/[\\]/g, '/'); 33 | } 34 | exports.toPosixPath = toPosixPath; 35 | /** 36 | * toWin32Path converts the given path to the win32 form. On Linux, / will be 37 | * replaced with \\. 38 | * 39 | * @param pth. Path to transform. 40 | * @return string Win32 path. 41 | */ 42 | function toWin32Path(pth) { 43 | return pth.replace(/[/]/g, '\\'); 44 | } 45 | exports.toWin32Path = toWin32Path; 46 | /** 47 | * toPlatformPath converts the given path to a platform-specific path. It does 48 | * this by replacing instances of / and \ with the platform-specific path 49 | * separator. 50 | * 51 | * @param pth The path to platformize. 52 | * @return string The platform-specific path. 53 | */ 54 | function toPlatformPath(pth) { 55 | return pth.replace(/[/\\]/g, path.sep); 56 | } 57 | exports.toPlatformPath = toPlatformPath; 58 | //# sourceMappingURL=path-utils.js.map -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/path-utils.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"path-utils.js","sourceRoot":"","sources":["../src/path-utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4B;AAE5B;;;;;;GAMG;AACH,SAAgB,WAAW,CAAC,GAAW;IACrC,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;AAClC,CAAC;AAFD,kCAEC;AAED;;;;;;GAMG;AACH,SAAgB,WAAW,CAAC,GAAW;IACrC,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AAClC,CAAC;AAFD,kCAEC;AAED;;;;;;;GAOG;AACH,SAAgB,cAAc,CAAC,GAAW;IACxC,OAAO,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;AACxC,CAAC;AAFD,wCAEC"} -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/summary.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"summary.js","sourceRoot":"","sources":["../src/summary.ts"],"names":[],"mappings":"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"} -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/utils.d.ts: -------------------------------------------------------------------------------- 1 | import { AnnotationProperties } from './core'; 2 | import { CommandProperties } from './command'; 3 | /** 4 | * Sanitizes an input into a string so it can be passed into issueCommand safely 5 | * @param input input to sanitize into a string 6 | */ 7 | export declare function toCommandValue(input: any): string; 8 | /** 9 | * 10 | * @param annotationProperties 11 | * @returns The command properties to send with the actual annotation command 12 | * See IssueCommandProperties: https://github.com/actions/runner/blob/main/src/Runner.Worker/ActionCommandManager.cs#L646 13 | */ 14 | export declare function toCommandProperties(annotationProperties: AnnotationProperties): CommandProperties; 15 | -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/utils.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | // We use any as a valid input type 3 | /* eslint-disable @typescript-eslint/no-explicit-any */ 4 | Object.defineProperty(exports, "__esModule", { value: true }); 5 | exports.toCommandProperties = exports.toCommandValue = void 0; 6 | /** 7 | * Sanitizes an input into a string so it can be passed into issueCommand safely 8 | * @param input input to sanitize into a string 9 | */ 10 | function toCommandValue(input) { 11 | if (input === null || input === undefined) { 12 | return ''; 13 | } 14 | else if (typeof input === 'string' || input instanceof String) { 15 | return input; 16 | } 17 | return JSON.stringify(input); 18 | } 19 | exports.toCommandValue = toCommandValue; 20 | /** 21 | * 22 | * @param annotationProperties 23 | * @returns The command properties to send with the actual annotation command 24 | * See IssueCommandProperties: https://github.com/actions/runner/blob/main/src/Runner.Worker/ActionCommandManager.cs#L646 25 | */ 26 | function toCommandProperties(annotationProperties) { 27 | if (!Object.keys(annotationProperties).length) { 28 | return {}; 29 | } 30 | return { 31 | title: annotationProperties.title, 32 | file: annotationProperties.file, 33 | line: annotationProperties.startLine, 34 | endLine: annotationProperties.endLine, 35 | col: annotationProperties.startColumn, 36 | endColumn: annotationProperties.endColumn 37 | }; 38 | } 39 | exports.toCommandProperties = toCommandProperties; 40 | //# sourceMappingURL=utils.js.map -------------------------------------------------------------------------------- /node_modules/@actions/core/lib/utils.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";AAAA,mCAAmC;AACnC,uDAAuD;;;AAKvD;;;GAGG;AACH,SAAgB,cAAc,CAAC,KAAU;IACvC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;QACzC,OAAO,EAAE,CAAA;KACV;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,YAAY,MAAM,EAAE;QAC/D,OAAO,KAAe,CAAA;KACvB;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;AAC9B,CAAC;AAPD,wCAOC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CACjC,oBAA0C;IAE1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,MAAM,EAAE;QAC7C,OAAO,EAAE,CAAA;KACV;IAED,OAAO;QACL,KAAK,EAAE,oBAAoB,CAAC,KAAK;QACjC,IAAI,EAAE,oBAAoB,CAAC,IAAI;QAC/B,IAAI,EAAE,oBAAoB,CAAC,SAAS;QACpC,OAAO,EAAE,oBAAoB,CAAC,OAAO;QACrC,GAAG,EAAE,oBAAoB,CAAC,WAAW;QACrC,SAAS,EAAE,oBAAoB,CAAC,SAAS;KAC1C,CAAA;AACH,CAAC;AAfD,kDAeC"} -------------------------------------------------------------------------------- /node_modules/@actions/core/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@actions/core", 3 | "version": "1.9.1", 4 | "description": "Actions core lib", 5 | "keywords": [ 6 | "github", 7 | "actions", 8 | "core" 9 | ], 10 | "homepage": "https://github.com/actions/toolkit/tree/main/packages/core", 11 | "license": "MIT", 12 | "main": "lib/core.js", 13 | "types": "lib/core.d.ts", 14 | "directories": { 15 | "lib": "lib", 16 | "test": "__tests__" 17 | }, 18 | "files": [ 19 | "lib", 20 | "!.DS_Store" 21 | ], 22 | "publishConfig": { 23 | "access": "public" 24 | }, 25 | "repository": { 26 | "type": "git", 27 | "url": "git+https://github.com/actions/toolkit.git", 28 | "directory": "packages/core" 29 | }, 30 | "scripts": { 31 | "audit-moderate": "npm install && npm audit --json --audit-level=moderate > audit.json", 32 | "test": "echo \"Error: run tests from root\" && exit 1", 33 | "tsc": "tsc" 34 | }, 35 | "bugs": { 36 | "url": "https://github.com/actions/toolkit/issues" 37 | }, 38 | "dependencies": { 39 | "@actions/http-client": "^2.0.1", 40 | "uuid": "^8.3.2" 41 | }, 42 | "devDependencies": { 43 | "@types/node": "^12.0.2", 44 | "@types/uuid": "^8.3.4" 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /node_modules/@actions/exec/LICENSE.md: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright 2019 GitHub 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 6 | 7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -------------------------------------------------------------------------------- /node_modules/@actions/exec/README.md: -------------------------------------------------------------------------------- 1 | # `@actions/exec` 2 | 3 | ## Usage 4 | 5 | #### Basic 6 | 7 | You can use this package to execute tools in a cross platform way: 8 | 9 | ```js 10 | const exec = require('@actions/exec'); 11 | 12 | await exec.exec('node index.js'); 13 | ``` 14 | 15 | #### Args 16 | 17 | You can also pass in arg arrays: 18 | 19 | ```js 20 | const exec = require('@actions/exec'); 21 | 22 | await exec.exec('node', ['index.js', 'foo=bar']); 23 | ``` 24 | 25 | #### Output/options 26 | 27 | Capture output or specify [other options](https://github.com/actions/toolkit/blob/d9347d4ab99fd507c0b9104b2cf79fb44fcc827d/packages/exec/src/interfaces.ts#L5): 28 | 29 | ```js 30 | const exec = require('@actions/exec'); 31 | 32 | let myOutput = ''; 33 | let myError = ''; 34 | 35 | const options = {}; 36 | options.listeners = { 37 | stdout: (data: Buffer) => { 38 | myOutput += data.toString(); 39 | }, 40 | stderr: (data: Buffer) => { 41 | myError += data.toString(); 42 | } 43 | }; 44 | options.cwd = './lib'; 45 | 46 | await exec.exec('node', ['index.js', 'foo=bar'], options); 47 | ``` 48 | 49 | #### Exec tools not in the PATH 50 | 51 | You can specify the full path for tools not in the PATH: 52 | 53 | ```js 54 | const exec = require('@actions/exec'); 55 | 56 | await exec.exec('"/path/to/my-tool"', ['arg1']); 57 | ``` 58 | -------------------------------------------------------------------------------- /node_modules/@actions/exec/lib/exec.d.ts: -------------------------------------------------------------------------------- 1 | import { ExecOptions, ExecOutput, ExecListeners } from './interfaces'; 2 | export { ExecOptions, ExecOutput, ExecListeners }; 3 | /** 4 | * Exec a command. 5 | * Output will be streamed to the live console. 6 | * Returns promise with return code 7 | * 8 | * @param commandLine command to execute (can include additional args). Must be correctly escaped. 9 | * @param args optional arguments for tool. Escaping is handled by the lib. 10 | * @param options optional exec options. See ExecOptions 11 | * @returns Promise exit code 12 | */ 13 | export declare function exec(commandLine: string, args?: string[], options?: ExecOptions): Promise; 14 | /** 15 | * Exec a command and get the output. 16 | * Output will be streamed to the live console. 17 | * Returns promise with the exit code and collected stdout and stderr 18 | * 19 | * @param commandLine command to execute (can include additional args). Must be correctly escaped. 20 | * @param args optional arguments for tool. Escaping is handled by the lib. 21 | * @param options optional exec options. See ExecOptions 22 | * @returns Promise exit code, stdout, and stderr 23 | */ 24 | export declare function getExecOutput(commandLine: string, args?: string[], options?: ExecOptions): Promise; 25 | -------------------------------------------------------------------------------- /node_modules/@actions/exec/lib/exec.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { 3 | if (k2 === undefined) k2 = k; 4 | Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); 5 | }) : (function(o, m, k, k2) { 6 | if (k2 === undefined) k2 = k; 7 | o[k2] = m[k]; 8 | })); 9 | var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { 10 | Object.defineProperty(o, "default", { enumerable: true, value: v }); 11 | }) : function(o, v) { 12 | o["default"] = v; 13 | }); 14 | var __importStar = (this && this.__importStar) || function (mod) { 15 | if (mod && mod.__esModule) return mod; 16 | var result = {}; 17 | if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); 18 | __setModuleDefault(result, mod); 19 | return result; 20 | }; 21 | var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { 22 | function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } 23 | return new (P || (P = Promise))(function (resolve, reject) { 24 | function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } 25 | function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } 26 | function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } 27 | step((generator = generator.apply(thisArg, _arguments || [])).next()); 28 | }); 29 | }; 30 | Object.defineProperty(exports, "__esModule", { value: true }); 31 | exports.getExecOutput = exports.exec = void 0; 32 | const string_decoder_1 = require("string_decoder"); 33 | const tr = __importStar(require("./toolrunner")); 34 | /** 35 | * Exec a command. 36 | * Output will be streamed to the live console. 37 | * Returns promise with return code 38 | * 39 | * @param commandLine command to execute (can include additional args). Must be correctly escaped. 40 | * @param args optional arguments for tool. Escaping is handled by the lib. 41 | * @param options optional exec options. See ExecOptions 42 | * @returns Promise exit code 43 | */ 44 | function exec(commandLine, args, options) { 45 | return __awaiter(this, void 0, void 0, function* () { 46 | const commandArgs = tr.argStringToArray(commandLine); 47 | if (commandArgs.length === 0) { 48 | throw new Error(`Parameter 'commandLine' cannot be null or empty.`); 49 | } 50 | // Path to tool to execute should be first arg 51 | const toolPath = commandArgs[0]; 52 | args = commandArgs.slice(1).concat(args || []); 53 | const runner = new tr.ToolRunner(toolPath, args, options); 54 | return runner.exec(); 55 | }); 56 | } 57 | exports.exec = exec; 58 | /** 59 | * Exec a command and get the output. 60 | * Output will be streamed to the live console. 61 | * Returns promise with the exit code and collected stdout and stderr 62 | * 63 | * @param commandLine command to execute (can include additional args). Must be correctly escaped. 64 | * @param args optional arguments for tool. Escaping is handled by the lib. 65 | * @param options optional exec options. See ExecOptions 66 | * @returns Promise exit code, stdout, and stderr 67 | */ 68 | function getExecOutput(commandLine, args, options) { 69 | var _a, _b; 70 | return __awaiter(this, void 0, void 0, function* () { 71 | let stdout = ''; 72 | let stderr = ''; 73 | //Using string decoder covers the case where a mult-byte character is split 74 | const stdoutDecoder = new string_decoder_1.StringDecoder('utf8'); 75 | const stderrDecoder = new string_decoder_1.StringDecoder('utf8'); 76 | const originalStdoutListener = (_a = options === null || options === void 0 ? void 0 : options.listeners) === null || _a === void 0 ? void 0 : _a.stdout; 77 | const originalStdErrListener = (_b = options === null || options === void 0 ? void 0 : options.listeners) === null || _b === void 0 ? void 0 : _b.stderr; 78 | const stdErrListener = (data) => { 79 | stderr += stderrDecoder.write(data); 80 | if (originalStdErrListener) { 81 | originalStdErrListener(data); 82 | } 83 | }; 84 | const stdOutListener = (data) => { 85 | stdout += stdoutDecoder.write(data); 86 | if (originalStdoutListener) { 87 | originalStdoutListener(data); 88 | } 89 | }; 90 | const listeners = Object.assign(Object.assign({}, options === null || options === void 0 ? void 0 : options.listeners), { stdout: stdOutListener, stderr: stdErrListener }); 91 | const exitCode = yield exec(commandLine, args, Object.assign(Object.assign({}, options), { listeners })); 92 | //flush any remaining characters 93 | stdout += stdoutDecoder.end(); 94 | stderr += stderrDecoder.end(); 95 | return { 96 | exitCode, 97 | stdout, 98 | stderr 99 | }; 100 | }); 101 | } 102 | exports.getExecOutput = getExecOutput; 103 | //# sourceMappingURL=exec.js.map -------------------------------------------------------------------------------- /node_modules/@actions/exec/lib/exec.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"exec.js","sourceRoot":"","sources":["../src/exec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAA4C;AAE5C,iDAAkC;AAIlC;;;;;;;;;GASG;AACH,SAAsB,IAAI,CACxB,WAAmB,EACnB,IAAe,EACf,OAAqB;;QAErB,MAAM,WAAW,GAAG,EAAE,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAA;QACpD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;SACpE;QACD,8CAA8C;QAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;QAC/B,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;QAC9C,MAAM,MAAM,GAAkB,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QACxE,OAAO,MAAM,CAAC,IAAI,EAAE,CAAA;IACtB,CAAC;CAAA;AAdD,oBAcC;AAED;;;;;;;;;GASG;AAEH,SAAsB,aAAa,CACjC,WAAmB,EACnB,IAAe,EACf,OAAqB;;;QAErB,IAAI,MAAM,GAAG,EAAE,CAAA;QACf,IAAI,MAAM,GAAG,EAAE,CAAA;QAEf,2EAA2E;QAC3E,MAAM,aAAa,GAAG,IAAI,8BAAa,CAAC,MAAM,CAAC,CAAA;QAC/C,MAAM,aAAa,GAAG,IAAI,8BAAa,CAAC,MAAM,CAAC,CAAA;QAE/C,MAAM,sBAAsB,SAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,0CAAE,MAAM,CAAA;QACzD,MAAM,sBAAsB,SAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,0CAAE,MAAM,CAAA;QAEzD,MAAM,cAAc,GAAG,CAAC,IAAY,EAAQ,EAAE;YAC5C,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACnC,IAAI,sBAAsB,EAAE;gBAC1B,sBAAsB,CAAC,IAAI,CAAC,CAAA;aAC7B;QACH,CAAC,CAAA;QAED,MAAM,cAAc,GAAG,CAAC,IAAY,EAAQ,EAAE;YAC5C,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACnC,IAAI,sBAAsB,EAAE;gBAC1B,sBAAsB,CAAC,IAAI,CAAC,CAAA;aAC7B;QACH,CAAC,CAAA;QAED,MAAM,SAAS,mCACV,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,KACrB,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,cAAc,GACvB,CAAA;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,IAAI,kCAAM,OAAO,KAAE,SAAS,IAAE,CAAA;QAEvE,gCAAgC;QAChC,MAAM,IAAI,aAAa,CAAC,GAAG,EAAE,CAAA;QAC7B,MAAM,IAAI,aAAa,CAAC,GAAG,EAAE,CAAA;QAE7B,OAAO;YACL,QAAQ;YACR,MAAM;YACN,MAAM;SACP,CAAA;;CACF;AA9CD,sCA8CC"} -------------------------------------------------------------------------------- /node_modules/@actions/exec/lib/interfaces.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | import * as stream from 'stream'; 3 | /** 4 | * Interface for exec options 5 | */ 6 | export interface ExecOptions { 7 | /** optional working directory. defaults to current */ 8 | cwd?: string; 9 | /** optional envvar dictionary. defaults to current process's env */ 10 | env?: { 11 | [key: string]: string; 12 | }; 13 | /** optional. defaults to false */ 14 | silent?: boolean; 15 | /** optional out stream to use. Defaults to process.stdout */ 16 | outStream?: stream.Writable; 17 | /** optional err stream to use. Defaults to process.stderr */ 18 | errStream?: stream.Writable; 19 | /** optional. whether to skip quoting/escaping arguments if needed. defaults to false. */ 20 | windowsVerbatimArguments?: boolean; 21 | /** optional. whether to fail if output to stderr. defaults to false */ 22 | failOnStdErr?: boolean; 23 | /** optional. defaults to failing on non zero. ignore will not fail leaving it up to the caller */ 24 | ignoreReturnCode?: boolean; 25 | /** optional. How long in ms to wait for STDIO streams to close after the exit event of the process before terminating. defaults to 10000 */ 26 | delay?: number; 27 | /** optional. input to write to the process on STDIN. */ 28 | input?: Buffer; 29 | /** optional. Listeners for output. Callback functions that will be called on these events */ 30 | listeners?: ExecListeners; 31 | } 32 | /** 33 | * Interface for the output of getExecOutput() 34 | */ 35 | export interface ExecOutput { 36 | /**The exit code of the process */ 37 | exitCode: number; 38 | /**The entire stdout of the process as a string */ 39 | stdout: string; 40 | /**The entire stderr of the process as a string */ 41 | stderr: string; 42 | } 43 | /** 44 | * The user defined listeners for an exec call 45 | */ 46 | export interface ExecListeners { 47 | /** A call back for each buffer of stdout */ 48 | stdout?: (data: Buffer) => void; 49 | /** A call back for each buffer of stderr */ 50 | stderr?: (data: Buffer) => void; 51 | /** A call back for each line of stdout */ 52 | stdline?: (data: string) => void; 53 | /** A call back for each line of stderr */ 54 | errline?: (data: string) => void; 55 | /** A call back for each debug log */ 56 | debug?: (data: string) => void; 57 | } 58 | -------------------------------------------------------------------------------- /node_modules/@actions/exec/lib/interfaces.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | //# sourceMappingURL=interfaces.js.map -------------------------------------------------------------------------------- /node_modules/@actions/exec/lib/interfaces.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":""} -------------------------------------------------------------------------------- /node_modules/@actions/exec/lib/toolrunner.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | import * as events from 'events'; 3 | import * as im from './interfaces'; 4 | export declare class ToolRunner extends events.EventEmitter { 5 | constructor(toolPath: string, args?: string[], options?: im.ExecOptions); 6 | private toolPath; 7 | private args; 8 | private options; 9 | private _debug; 10 | private _getCommandString; 11 | private _processLineBuffer; 12 | private _getSpawnFileName; 13 | private _getSpawnArgs; 14 | private _endsWith; 15 | private _isCmdFile; 16 | private _windowsQuoteCmdArg; 17 | private _uvQuoteCmdArg; 18 | private _cloneExecOptions; 19 | private _getSpawnOptions; 20 | /** 21 | * Exec a tool. 22 | * Output will be streamed to the live console. 23 | * Returns promise with return code 24 | * 25 | * @param tool path to tool to exec 26 | * @param options optional exec options. See ExecOptions 27 | * @returns number 28 | */ 29 | exec(): Promise; 30 | } 31 | /** 32 | * Convert an arg string to an array of args. Handles escaping 33 | * 34 | * @param argString string of arguments 35 | * @returns string[] array of arguments 36 | */ 37 | export declare function argStringToArray(argString: string): string[]; 38 | -------------------------------------------------------------------------------- /node_modules/@actions/exec/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@actions/exec", 3 | "version": "1.1.1", 4 | "description": "Actions exec lib", 5 | "keywords": [ 6 | "github", 7 | "actions", 8 | "exec" 9 | ], 10 | "homepage": "https://github.com/actions/toolkit/tree/main/packages/exec", 11 | "license": "MIT", 12 | "main": "lib/exec.js", 13 | "types": "lib/exec.d.ts", 14 | "directories": { 15 | "lib": "lib", 16 | "test": "__tests__" 17 | }, 18 | "files": [ 19 | "lib", 20 | "!.DS_Store" 21 | ], 22 | "publishConfig": { 23 | "access": "public" 24 | }, 25 | "repository": { 26 | "type": "git", 27 | "url": "git+https://github.com/actions/toolkit.git", 28 | "directory": "packages/exec" 29 | }, 30 | "scripts": { 31 | "audit-moderate": "npm install && npm audit --json --audit-level=moderate > audit.json", 32 | "test": "echo \"Error: run tests from root\" && exit 1", 33 | "tsc": "tsc" 34 | }, 35 | "bugs": { 36 | "url": "https://github.com/actions/toolkit/issues" 37 | }, 38 | "dependencies": { 39 | "@actions/io": "^1.0.1" 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /node_modules/@actions/http-client/LICENSE: -------------------------------------------------------------------------------- 1 | Actions Http Client for Node.js 2 | 3 | Copyright (c) GitHub, Inc. 4 | 5 | All rights reserved. 6 | 7 | MIT License 8 | 9 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and 10 | associated documentation files (the "Software"), to deal in the Software without restriction, 11 | including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, 12 | and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, 13 | subject to the following conditions: 14 | 15 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED *AS IS*, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT 18 | LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN 19 | NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 20 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 21 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /node_modules/@actions/http-client/README.md: -------------------------------------------------------------------------------- 1 | # `@actions/http-client` 2 | 3 | A lightweight HTTP client optimized for building actions. 4 | 5 | ## Features 6 | 7 | - HTTP client with TypeScript generics and async/await/Promises 8 | - Typings included! 9 | - [Proxy support](https://help.github.com/en/actions/automating-your-workflow-with-github-actions/about-self-hosted-runners#using-a-proxy-server-with-self-hosted-runners) just works with actions and the runner 10 | - Targets ES2019 (runner runs actions with node 12+). Only supported on node 12+. 11 | - Basic, Bearer and PAT Support out of the box. Extensible handlers for others. 12 | - Redirects supported 13 | 14 | Features and releases [here](./RELEASES.md) 15 | 16 | ## Install 17 | 18 | ``` 19 | npm install @actions/http-client --save 20 | ``` 21 | 22 | ## Samples 23 | 24 | See the [tests](./__tests__) for detailed examples. 25 | 26 | ## Errors 27 | 28 | ### HTTP 29 | 30 | The HTTP client does not throw unless truly exceptional. 31 | 32 | * A request that successfully executes resulting in a 404, 500 etc... will return a response object with a status code and a body. 33 | * Redirects (3xx) will be followed by default. 34 | 35 | See the [tests](./__tests__) for detailed examples. 36 | 37 | ## Debugging 38 | 39 | To enable detailed console logging of all HTTP requests and responses, set the NODE_DEBUG environment varible: 40 | 41 | ```shell 42 | export NODE_DEBUG=http 43 | ``` 44 | 45 | ## Node support 46 | 47 | The http-client is built using the latest LTS version of Node 12. It may work on previous node LTS versions but it's tested and officially supported on Node12+. 48 | 49 | ## Support and Versioning 50 | 51 | We follow semver and will hold compatibility between major versions and increment the minor version with new features and capabilities (while holding compat). 52 | 53 | ## Contributing 54 | 55 | We welcome PRs. Please create an issue and if applicable, a design before proceeding with code. 56 | 57 | once: 58 | 59 | ``` 60 | npm install 61 | ``` 62 | 63 | To build: 64 | 65 | ``` 66 | npm run build 67 | ``` 68 | 69 | To run all tests: 70 | 71 | ``` 72 | npm test 73 | ``` 74 | -------------------------------------------------------------------------------- /node_modules/@actions/http-client/lib/auth.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | import * as http from 'http'; 3 | import * as ifm from './interfaces'; 4 | import { HttpClientResponse } from './index'; 5 | export declare class BasicCredentialHandler implements ifm.RequestHandler { 6 | username: string; 7 | password: string; 8 | constructor(username: string, password: string); 9 | prepareRequest(options: http.RequestOptions): void; 10 | canHandleAuthentication(): boolean; 11 | handleAuthentication(): Promise; 12 | } 13 | export declare class BearerCredentialHandler implements ifm.RequestHandler { 14 | token: string; 15 | constructor(token: string); 16 | prepareRequest(options: http.RequestOptions): void; 17 | canHandleAuthentication(): boolean; 18 | handleAuthentication(): Promise; 19 | } 20 | export declare class PersonalAccessTokenCredentialHandler implements ifm.RequestHandler { 21 | token: string; 22 | constructor(token: string); 23 | prepareRequest(options: http.RequestOptions): void; 24 | canHandleAuthentication(): boolean; 25 | handleAuthentication(): Promise; 26 | } 27 | -------------------------------------------------------------------------------- /node_modules/@actions/http-client/lib/auth.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { 3 | function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } 4 | return new (P || (P = Promise))(function (resolve, reject) { 5 | function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } 6 | function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } 7 | function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } 8 | step((generator = generator.apply(thisArg, _arguments || [])).next()); 9 | }); 10 | }; 11 | Object.defineProperty(exports, "__esModule", { value: true }); 12 | exports.PersonalAccessTokenCredentialHandler = exports.BearerCredentialHandler = exports.BasicCredentialHandler = void 0; 13 | class BasicCredentialHandler { 14 | constructor(username, password) { 15 | this.username = username; 16 | this.password = password; 17 | } 18 | prepareRequest(options) { 19 | if (!options.headers) { 20 | throw Error('The request has no headers'); 21 | } 22 | options.headers['Authorization'] = `Basic ${Buffer.from(`${this.username}:${this.password}`).toString('base64')}`; 23 | } 24 | // This handler cannot handle 401 25 | canHandleAuthentication() { 26 | return false; 27 | } 28 | handleAuthentication() { 29 | return __awaiter(this, void 0, void 0, function* () { 30 | throw new Error('not implemented'); 31 | }); 32 | } 33 | } 34 | exports.BasicCredentialHandler = BasicCredentialHandler; 35 | class BearerCredentialHandler { 36 | constructor(token) { 37 | this.token = token; 38 | } 39 | // currently implements pre-authorization 40 | // TODO: support preAuth = false where it hooks on 401 41 | prepareRequest(options) { 42 | if (!options.headers) { 43 | throw Error('The request has no headers'); 44 | } 45 | options.headers['Authorization'] = `Bearer ${this.token}`; 46 | } 47 | // This handler cannot handle 401 48 | canHandleAuthentication() { 49 | return false; 50 | } 51 | handleAuthentication() { 52 | return __awaiter(this, void 0, void 0, function* () { 53 | throw new Error('not implemented'); 54 | }); 55 | } 56 | } 57 | exports.BearerCredentialHandler = BearerCredentialHandler; 58 | class PersonalAccessTokenCredentialHandler { 59 | constructor(token) { 60 | this.token = token; 61 | } 62 | // currently implements pre-authorization 63 | // TODO: support preAuth = false where it hooks on 401 64 | prepareRequest(options) { 65 | if (!options.headers) { 66 | throw Error('The request has no headers'); 67 | } 68 | options.headers['Authorization'] = `Basic ${Buffer.from(`PAT:${this.token}`).toString('base64')}`; 69 | } 70 | // This handler cannot handle 401 71 | canHandleAuthentication() { 72 | return false; 73 | } 74 | handleAuthentication() { 75 | return __awaiter(this, void 0, void 0, function* () { 76 | throw new Error('not implemented'); 77 | }); 78 | } 79 | } 80 | exports.PersonalAccessTokenCredentialHandler = PersonalAccessTokenCredentialHandler; 81 | //# sourceMappingURL=auth.js.map -------------------------------------------------------------------------------- /node_modules/@actions/http-client/lib/auth.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":";;;;;;;;;;;;AAIA,MAAa,sBAAsB;IAIjC,YAAY,QAAgB,EAAE,QAAgB;QAC5C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IAED,cAAc,CAAC,OAA4B;QACzC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACpB,MAAM,KAAK,CAAC,4BAA4B,CAAC,CAAA;SAC1C;QACD,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,SAAS,MAAM,CAAC,IAAI,CACrD,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CACpC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAA;IACxB,CAAC;IAED,iCAAiC;IACjC,uBAAuB;QACrB,OAAO,KAAK,CAAA;IACd,CAAC;IAEK,oBAAoB;;YACxB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;QACpC,CAAC;KAAA;CACF;AA1BD,wDA0BC;AAED,MAAa,uBAAuB;IAGlC,YAAY,KAAa;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED,yCAAyC;IACzC,sDAAsD;IACtD,cAAc,CAAC,OAA4B;QACzC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACpB,MAAM,KAAK,CAAC,4BAA4B,CAAC,CAAA;SAC1C;QACD,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,IAAI,CAAC,KAAK,EAAE,CAAA;IAC3D,CAAC;IAED,iCAAiC;IACjC,uBAAuB;QACrB,OAAO,KAAK,CAAA;IACd,CAAC;IAEK,oBAAoB;;YACxB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;QACpC,CAAC;KAAA;CACF;AAxBD,0DAwBC;AAED,MAAa,oCAAoC;IAI/C,YAAY,KAAa;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED,yCAAyC;IACzC,sDAAsD;IACtD,cAAc,CAAC,OAA4B;QACzC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACpB,MAAM,KAAK,CAAC,4BAA4B,CAAC,CAAA;SAC1C;QACD,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,SAAS,MAAM,CAAC,IAAI,CACrD,OAAO,IAAI,CAAC,KAAK,EAAE,CACpB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAA;IACxB,CAAC;IAED,iCAAiC;IACjC,uBAAuB;QACrB,OAAO,KAAK,CAAA;IACd,CAAC;IAEK,oBAAoB;;YACxB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;QACpC,CAAC;KAAA;CACF;AA3BD,oFA2BC"} -------------------------------------------------------------------------------- /node_modules/@actions/http-client/lib/index.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | import * as http from 'http'; 3 | import * as ifm from './interfaces'; 4 | export declare enum HttpCodes { 5 | OK = 200, 6 | MultipleChoices = 300, 7 | MovedPermanently = 301, 8 | ResourceMoved = 302, 9 | SeeOther = 303, 10 | NotModified = 304, 11 | UseProxy = 305, 12 | SwitchProxy = 306, 13 | TemporaryRedirect = 307, 14 | PermanentRedirect = 308, 15 | BadRequest = 400, 16 | Unauthorized = 401, 17 | PaymentRequired = 402, 18 | Forbidden = 403, 19 | NotFound = 404, 20 | MethodNotAllowed = 405, 21 | NotAcceptable = 406, 22 | ProxyAuthenticationRequired = 407, 23 | RequestTimeout = 408, 24 | Conflict = 409, 25 | Gone = 410, 26 | TooManyRequests = 429, 27 | InternalServerError = 500, 28 | NotImplemented = 501, 29 | BadGateway = 502, 30 | ServiceUnavailable = 503, 31 | GatewayTimeout = 504 32 | } 33 | export declare enum Headers { 34 | Accept = "accept", 35 | ContentType = "content-type" 36 | } 37 | export declare enum MediaTypes { 38 | ApplicationJson = "application/json" 39 | } 40 | /** 41 | * Returns the proxy URL, depending upon the supplied url and proxy environment variables. 42 | * @param serverUrl The server URL where the request will be sent. For example, https://api.github.com 43 | */ 44 | export declare function getProxyUrl(serverUrl: string): string; 45 | export declare class HttpClientError extends Error { 46 | constructor(message: string, statusCode: number); 47 | statusCode: number; 48 | result?: any; 49 | } 50 | export declare class HttpClientResponse { 51 | constructor(message: http.IncomingMessage); 52 | message: http.IncomingMessage; 53 | readBody(): Promise; 54 | } 55 | export declare function isHttps(requestUrl: string): boolean; 56 | export declare class HttpClient { 57 | userAgent: string | undefined; 58 | handlers: ifm.RequestHandler[]; 59 | requestOptions: ifm.RequestOptions | undefined; 60 | private _ignoreSslError; 61 | private _socketTimeout; 62 | private _allowRedirects; 63 | private _allowRedirectDowngrade; 64 | private _maxRedirects; 65 | private _allowRetries; 66 | private _maxRetries; 67 | private _agent; 68 | private _proxyAgent; 69 | private _keepAlive; 70 | private _disposed; 71 | constructor(userAgent?: string, handlers?: ifm.RequestHandler[], requestOptions?: ifm.RequestOptions); 72 | options(requestUrl: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 73 | get(requestUrl: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 74 | del(requestUrl: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 75 | post(requestUrl: string, data: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 76 | patch(requestUrl: string, data: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 77 | put(requestUrl: string, data: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 78 | head(requestUrl: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 79 | sendStream(verb: string, requestUrl: string, stream: NodeJS.ReadableStream, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 80 | /** 81 | * Gets a typed object from an endpoint 82 | * Be aware that not found returns a null. Other errors (4xx, 5xx) reject the promise 83 | */ 84 | getJson(requestUrl: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise>; 85 | postJson(requestUrl: string, obj: any, additionalHeaders?: http.OutgoingHttpHeaders): Promise>; 86 | putJson(requestUrl: string, obj: any, additionalHeaders?: http.OutgoingHttpHeaders): Promise>; 87 | patchJson(requestUrl: string, obj: any, additionalHeaders?: http.OutgoingHttpHeaders): Promise>; 88 | /** 89 | * Makes a raw http request. 90 | * All other methods such as get, post, patch, and request ultimately call this. 91 | * Prefer get, del, post and patch 92 | */ 93 | request(verb: string, requestUrl: string, data: string | NodeJS.ReadableStream | null, headers?: http.OutgoingHttpHeaders): Promise; 94 | /** 95 | * Needs to be called if keepAlive is set to true in request options. 96 | */ 97 | dispose(): void; 98 | /** 99 | * Raw request. 100 | * @param info 101 | * @param data 102 | */ 103 | requestRaw(info: ifm.RequestInfo, data: string | NodeJS.ReadableStream | null): Promise; 104 | /** 105 | * Raw request with callback. 106 | * @param info 107 | * @param data 108 | * @param onResult 109 | */ 110 | requestRawWithCallback(info: ifm.RequestInfo, data: string | NodeJS.ReadableStream | null, onResult: (err?: Error, res?: HttpClientResponse) => void): void; 111 | /** 112 | * Gets an http agent. This function is useful when you need an http agent that handles 113 | * routing through a proxy server - depending upon the url and proxy environment variables. 114 | * @param serverUrl The server URL where the request will be sent. For example, https://api.github.com 115 | */ 116 | getAgent(serverUrl: string): http.Agent; 117 | private _prepareRequest; 118 | private _mergeHeaders; 119 | private _getExistingOrDefaultHeader; 120 | private _getAgent; 121 | private _performExponentialBackoff; 122 | private _processResponse; 123 | } 124 | -------------------------------------------------------------------------------- /node_modules/@actions/http-client/lib/interfaces.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | import * as http from 'http'; 3 | import * as https from 'https'; 4 | import { HttpClientResponse } from './index'; 5 | export interface HttpClient { 6 | options(requestUrl: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 7 | get(requestUrl: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 8 | del(requestUrl: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 9 | post(requestUrl: string, data: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 10 | patch(requestUrl: string, data: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 11 | put(requestUrl: string, data: string, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 12 | sendStream(verb: string, requestUrl: string, stream: NodeJS.ReadableStream, additionalHeaders?: http.OutgoingHttpHeaders): Promise; 13 | request(verb: string, requestUrl: string, data: string | NodeJS.ReadableStream, headers: http.OutgoingHttpHeaders): Promise; 14 | requestRaw(info: RequestInfo, data: string | NodeJS.ReadableStream): Promise; 15 | requestRawWithCallback(info: RequestInfo, data: string | NodeJS.ReadableStream, onResult: (err?: Error, res?: HttpClientResponse) => void): void; 16 | } 17 | export interface RequestHandler { 18 | prepareRequest(options: http.RequestOptions): void; 19 | canHandleAuthentication(response: HttpClientResponse): boolean; 20 | handleAuthentication(httpClient: HttpClient, requestInfo: RequestInfo, data: string | NodeJS.ReadableStream | null): Promise; 21 | } 22 | export interface RequestInfo { 23 | options: http.RequestOptions; 24 | parsedUrl: URL; 25 | httpModule: typeof http | typeof https; 26 | } 27 | export interface RequestOptions { 28 | headers?: http.OutgoingHttpHeaders; 29 | socketTimeout?: number; 30 | ignoreSslError?: boolean; 31 | allowRedirects?: boolean; 32 | allowRedirectDowngrade?: boolean; 33 | maxRedirects?: number; 34 | maxSockets?: number; 35 | keepAlive?: boolean; 36 | deserializeDates?: boolean; 37 | allowRetries?: boolean; 38 | maxRetries?: number; 39 | } 40 | export interface TypedResponse { 41 | statusCode: number; 42 | result: T | null; 43 | headers: http.IncomingHttpHeaders; 44 | } 45 | -------------------------------------------------------------------------------- /node_modules/@actions/http-client/lib/interfaces.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | //# sourceMappingURL=interfaces.js.map -------------------------------------------------------------------------------- /node_modules/@actions/http-client/lib/interfaces.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":""} -------------------------------------------------------------------------------- /node_modules/@actions/http-client/lib/proxy.d.ts: -------------------------------------------------------------------------------- 1 | export declare function getProxyUrl(reqUrl: URL): URL | undefined; 2 | export declare function checkBypass(reqUrl: URL): boolean; 3 | -------------------------------------------------------------------------------- /node_modules/@actions/http-client/lib/proxy.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | Object.defineProperty(exports, "__esModule", { value: true }); 3 | exports.checkBypass = exports.getProxyUrl = void 0; 4 | function getProxyUrl(reqUrl) { 5 | const usingSsl = reqUrl.protocol === 'https:'; 6 | if (checkBypass(reqUrl)) { 7 | return undefined; 8 | } 9 | const proxyVar = (() => { 10 | if (usingSsl) { 11 | return process.env['https_proxy'] || process.env['HTTPS_PROXY']; 12 | } 13 | else { 14 | return process.env['http_proxy'] || process.env['HTTP_PROXY']; 15 | } 16 | })(); 17 | if (proxyVar) { 18 | return new URL(proxyVar); 19 | } 20 | else { 21 | return undefined; 22 | } 23 | } 24 | exports.getProxyUrl = getProxyUrl; 25 | function checkBypass(reqUrl) { 26 | if (!reqUrl.hostname) { 27 | return false; 28 | } 29 | const noProxy = process.env['no_proxy'] || process.env['NO_PROXY'] || ''; 30 | if (!noProxy) { 31 | return false; 32 | } 33 | // Determine the request port 34 | let reqPort; 35 | if (reqUrl.port) { 36 | reqPort = Number(reqUrl.port); 37 | } 38 | else if (reqUrl.protocol === 'http:') { 39 | reqPort = 80; 40 | } 41 | else if (reqUrl.protocol === 'https:') { 42 | reqPort = 443; 43 | } 44 | // Format the request hostname and hostname with port 45 | const upperReqHosts = [reqUrl.hostname.toUpperCase()]; 46 | if (typeof reqPort === 'number') { 47 | upperReqHosts.push(`${upperReqHosts[0]}:${reqPort}`); 48 | } 49 | // Compare request host against noproxy 50 | for (const upperNoProxyItem of noProxy 51 | .split(',') 52 | .map(x => x.trim().toUpperCase()) 53 | .filter(x => x)) { 54 | if (upperReqHosts.some(x => x === upperNoProxyItem)) { 55 | return true; 56 | } 57 | } 58 | return false; 59 | } 60 | exports.checkBypass = checkBypass; 61 | //# sourceMappingURL=proxy.js.map -------------------------------------------------------------------------------- /node_modules/@actions/http-client/lib/proxy.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":";;;AAAA,SAAgB,WAAW,CAAC,MAAW;IACrC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAA;IAE7C,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE;QACvB,OAAO,SAAS,CAAA;KACjB;IAED,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE;QACrB,IAAI,QAAQ,EAAE;YACZ,OAAO,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;SAChE;aAAM;YACL,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;SAC9D;IACH,CAAC,CAAC,EAAE,CAAA;IAEJ,IAAI,QAAQ,EAAE;QACZ,OAAO,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAA;KACzB;SAAM;QACL,OAAO,SAAS,CAAA;KACjB;AACH,CAAC;AApBD,kCAoBC;AAED,SAAgB,WAAW,CAAC,MAAW;IACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;QACpB,OAAO,KAAK,CAAA;KACb;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;IACxE,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,KAAK,CAAA;KACb;IAED,6BAA6B;IAC7B,IAAI,OAA2B,CAAA;IAC/B,IAAI,MAAM,CAAC,IAAI,EAAE;QACf,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;KAC9B;SAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,EAAE;QACtC,OAAO,GAAG,EAAE,CAAA;KACb;SAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE;QACvC,OAAO,GAAG,GAAG,CAAA;KACd;IAED,qDAAqD;IACrD,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAA;IACrD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,aAAa,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,OAAO,EAAE,CAAC,CAAA;KACrD;IAED,uCAAuC;IACvC,KAAK,MAAM,gBAAgB,IAAI,OAAO;SACnC,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;SAChC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACjB,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,gBAAgB,CAAC,EAAE;YACnD,OAAO,IAAI,CAAA;SACZ;KACF;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AArCD,kCAqCC"} -------------------------------------------------------------------------------- /node_modules/@actions/http-client/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@actions/http-client", 3 | "version": "2.0.1", 4 | "description": "Actions Http Client", 5 | "keywords": [ 6 | "github", 7 | "actions", 8 | "http" 9 | ], 10 | "homepage": "https://github.com/actions/toolkit/tree/main/packages/http-client", 11 | "license": "MIT", 12 | "main": "lib/index.js", 13 | "types": "lib/index.d.ts", 14 | "directories": { 15 | "lib": "lib", 16 | "test": "__tests__" 17 | }, 18 | "files": [ 19 | "lib", 20 | "!.DS_Store" 21 | ], 22 | "publishConfig": { 23 | "access": "public" 24 | }, 25 | "repository": { 26 | "type": "git", 27 | "url": "git+https://github.com/actions/toolkit.git", 28 | "directory": "packages/http-client" 29 | }, 30 | "scripts": { 31 | "audit-moderate": "npm install && npm audit --json --audit-level=moderate > audit.json", 32 | "test": "echo \"Error: run tests from root\" && exit 1", 33 | "build": "tsc", 34 | "format": "prettier --write **/*.ts", 35 | "format-check": "prettier --check **/*.ts", 36 | "tsc": "tsc" 37 | }, 38 | "bugs": { 39 | "url": "https://github.com/actions/toolkit/issues" 40 | }, 41 | "devDependencies": { 42 | "@types/tunnel": "0.0.3", 43 | "proxy": "^1.0.1" 44 | }, 45 | "dependencies": { 46 | "tunnel": "^0.0.6" 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /node_modules/@actions/io/LICENSE.md: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright 2019 GitHub 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 6 | 7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -------------------------------------------------------------------------------- /node_modules/@actions/io/README.md: -------------------------------------------------------------------------------- 1 | # `@actions/io` 2 | 3 | > Core functions for cli filesystem scenarios 4 | 5 | ## Usage 6 | 7 | #### mkdir -p 8 | 9 | Recursively make a directory. Follows rules specified in [man mkdir](https://linux.die.net/man/1/mkdir) with the `-p` option specified: 10 | 11 | ```js 12 | const io = require('@actions/io'); 13 | 14 | await io.mkdirP('path/to/make'); 15 | ``` 16 | 17 | #### cp/mv 18 | 19 | Copy or move files or folders. Follows rules specified in [man cp](https://linux.die.net/man/1/cp) and [man mv](https://linux.die.net/man/1/mv): 20 | 21 | ```js 22 | const io = require('@actions/io'); 23 | 24 | // Recursive must be true for directories 25 | const options = { recursive: true, force: false } 26 | 27 | await io.cp('path/to/directory', 'path/to/dest', options); 28 | await io.mv('path/to/file', 'path/to/dest'); 29 | ``` 30 | 31 | #### rm -rf 32 | 33 | Remove a file or folder recursively. Follows rules specified in [man rm](https://linux.die.net/man/1/rm) with the `-r` and `-f` rules specified. 34 | 35 | ```js 36 | const io = require('@actions/io'); 37 | 38 | await io.rmRF('path/to/directory'); 39 | await io.rmRF('path/to/file'); 40 | ``` 41 | 42 | #### which 43 | 44 | Get the path to a tool and resolves via paths. Follows the rules specified in [man which](https://linux.die.net/man/1/which). 45 | 46 | ```js 47 | const exec = require('@actions/exec'); 48 | const io = require('@actions/io'); 49 | 50 | const pythonPath: string = await io.which('python', true) 51 | 52 | await exec.exec(`"${pythonPath}"`, ['main.py']); 53 | ``` 54 | -------------------------------------------------------------------------------- /node_modules/@actions/io/lib/io-util.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | import * as fs from 'fs'; 3 | export declare const chmod: typeof fs.promises.chmod, copyFile: typeof fs.promises.copyFile, lstat: typeof fs.promises.lstat, mkdir: typeof fs.promises.mkdir, readdir: typeof fs.promises.readdir, readlink: typeof fs.promises.readlink, rename: typeof fs.promises.rename, rmdir: typeof fs.promises.rmdir, stat: typeof fs.promises.stat, symlink: typeof fs.promises.symlink, unlink: typeof fs.promises.unlink; 4 | export declare const IS_WINDOWS: boolean; 5 | export declare function exists(fsPath: string): Promise; 6 | export declare function isDirectory(fsPath: string, useStat?: boolean): Promise; 7 | /** 8 | * On OSX/Linux, true if path starts with '/'. On Windows, true for paths like: 9 | * \, \hello, \\hello\share, C:, and C:\hello (and corresponding alternate separator cases). 10 | */ 11 | export declare function isRooted(p: string): boolean; 12 | /** 13 | * Best effort attempt to determine whether a file exists and is executable. 14 | * @param filePath file path to check 15 | * @param extensions additional file extensions to try 16 | * @return if file exists and is executable, returns the file path. otherwise empty string. 17 | */ 18 | export declare function tryGetExecutablePath(filePath: string, extensions: string[]): Promise; 19 | export declare function getCmdPath(): string; 20 | -------------------------------------------------------------------------------- /node_modules/@actions/io/lib/io-util.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"io-util.js","sourceRoot":"","sources":["../src/io-util.ts"],"names":[],"mappings":"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"} -------------------------------------------------------------------------------- /node_modules/@actions/io/lib/io.d.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * Interface for cp/mv options 3 | */ 4 | export interface CopyOptions { 5 | /** Optional. Whether to recursively copy all subdirectories. Defaults to false */ 6 | recursive?: boolean; 7 | /** Optional. Whether to overwrite existing files in the destination. Defaults to true */ 8 | force?: boolean; 9 | /** Optional. Whether to copy the source directory along with all the files. Only takes effect when recursive=true and copying a directory. Default is true*/ 10 | copySourceDirectory?: boolean; 11 | } 12 | /** 13 | * Interface for cp/mv options 14 | */ 15 | export interface MoveOptions { 16 | /** Optional. Whether to overwrite existing files in the destination. Defaults to true */ 17 | force?: boolean; 18 | } 19 | /** 20 | * Copies a file or folder. 21 | * Based off of shelljs - https://github.com/shelljs/shelljs/blob/9237f66c52e5daa40458f94f9565e18e8132f5a6/src/cp.js 22 | * 23 | * @param source source path 24 | * @param dest destination path 25 | * @param options optional. See CopyOptions. 26 | */ 27 | export declare function cp(source: string, dest: string, options?: CopyOptions): Promise; 28 | /** 29 | * Moves a path. 30 | * 31 | * @param source source path 32 | * @param dest destination path 33 | * @param options optional. See MoveOptions. 34 | */ 35 | export declare function mv(source: string, dest: string, options?: MoveOptions): Promise; 36 | /** 37 | * Remove a path recursively with force 38 | * 39 | * @param inputPath path to remove 40 | */ 41 | export declare function rmRF(inputPath: string): Promise; 42 | /** 43 | * Make a directory. Creates the full path with folders in between 44 | * Will throw if it fails 45 | * 46 | * @param fsPath path to create 47 | * @returns Promise 48 | */ 49 | export declare function mkdirP(fsPath: string): Promise; 50 | /** 51 | * Returns path of a tool had the tool actually been invoked. Resolves via paths. 52 | * If you check and the tool does not exist, it will throw. 53 | * 54 | * @param tool name of the tool 55 | * @param check whether to check if tool exists 56 | * @returns Promise path to tool 57 | */ 58 | export declare function which(tool: string, check?: boolean): Promise; 59 | /** 60 | * Returns a list of all occurrences of the given tool on the system path. 61 | * 62 | * @returns Promise the paths of the tool 63 | */ 64 | export declare function findInPath(tool: string): Promise; 65 | -------------------------------------------------------------------------------- /node_modules/@actions/io/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@actions/io", 3 | "version": "1.1.2", 4 | "description": "Actions io lib", 5 | "keywords": [ 6 | "github", 7 | "actions", 8 | "io" 9 | ], 10 | "homepage": "https://github.com/actions/toolkit/tree/main/packages/io", 11 | "license": "MIT", 12 | "main": "lib/io.js", 13 | "types": "lib/io.d.ts", 14 | "directories": { 15 | "lib": "lib", 16 | "test": "__tests__" 17 | }, 18 | "files": [ 19 | "lib" 20 | ], 21 | "publishConfig": { 22 | "access": "public" 23 | }, 24 | "repository": { 25 | "type": "git", 26 | "url": "git+https://github.com/actions/toolkit.git", 27 | "directory": "packages/io" 28 | }, 29 | "scripts": { 30 | "audit-moderate": "npm install && npm audit --json --audit-level=moderate > audit.json", 31 | "test": "echo \"Error: run tests from root\" && exit 1", 32 | "tsc": "tsc" 33 | }, 34 | "bugs": { 35 | "url": "https://github.com/actions/toolkit/issues" 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /node_modules/tunnel/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /node_modules/tunnel/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /node_modules/tunnel/.idea/node-tunnel.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /node_modules/tunnel/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /node_modules/tunnel/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "4" 4 | - "6" 5 | - "8" 6 | - "10" 7 | -------------------------------------------------------------------------------- /node_modules/tunnel/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | - 0.0.6 (2018/09/11) 4 | - Fix `localAddress` not working (#25) 5 | - Fix `Host:` header for CONNECT method by @tmurakam (#29, #30) 6 | - Fix default port for https (#32) 7 | - Fix error handling when the proxy send illegal response body (#33) 8 | 9 | - 0.0.5 (2017/06/12) 10 | - Fix socket leak. 11 | 12 | - 0.0.4 (2016/01/23) 13 | - supported Node v0.12 or later. 14 | 15 | - 0.0.3 (2014/01/20) 16 | - fixed package.json 17 | 18 | - 0.0.1 (2012/02/18) 19 | - supported Node v0.6.x (0.6.11 or later). 20 | 21 | - 0.0.0 (2012/02/11) 22 | - first release. 23 | -------------------------------------------------------------------------------- /node_modules/tunnel/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2012 Koichi Kobayashi 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /node_modules/tunnel/README.md: -------------------------------------------------------------------------------- 1 | # node-tunnel - HTTP/HTTPS Agents for tunneling proxies 2 | 3 | [![Build Status](https://img.shields.io/travis/koichik/node-tunnel.svg?style=flat)](https://travis-ci.org/koichik/node-tunnel) 4 | [![Dependency Status](http://img.shields.io/david/koichik/node-tunnel.svg?style=flat)](https://david-dm.org/koichik/node-tunnel#info=dependencies) 5 | [![DevDependency Status](http://img.shields.io/david/dev/koichik/node-tunnel.svg?style=flat)](https://david-dm.org/koichik/node-tunnel#info=devDependencies) 6 | 7 | ## Example 8 | 9 | ```javascript 10 | var tunnel = require('tunnel'); 11 | 12 | var tunnelingAgent = tunnel.httpsOverHttp({ 13 | proxy: { 14 | host: 'localhost', 15 | port: 3128 16 | } 17 | }); 18 | 19 | var req = https.request({ 20 | host: 'example.com', 21 | port: 443, 22 | agent: tunnelingAgent 23 | }); 24 | ``` 25 | 26 | ## Installation 27 | 28 | $ npm install tunnel 29 | 30 | ## Usages 31 | 32 | ### HTTP over HTTP tunneling 33 | 34 | ```javascript 35 | var tunnelingAgent = tunnel.httpOverHttp({ 36 | maxSockets: poolSize, // Defaults to http.Agent.defaultMaxSockets 37 | 38 | proxy: { // Proxy settings 39 | host: proxyHost, // Defaults to 'localhost' 40 | port: proxyPort, // Defaults to 80 41 | localAddress: localAddress, // Local interface if necessary 42 | 43 | // Basic authorization for proxy server if necessary 44 | proxyAuth: 'user:password', 45 | 46 | // Header fields for proxy server if necessary 47 | headers: { 48 | 'User-Agent': 'Node' 49 | } 50 | } 51 | }); 52 | 53 | var req = http.request({ 54 | host: 'example.com', 55 | port: 80, 56 | agent: tunnelingAgent 57 | }); 58 | ``` 59 | 60 | ### HTTPS over HTTP tunneling 61 | 62 | ```javascript 63 | var tunnelingAgent = tunnel.httpsOverHttp({ 64 | maxSockets: poolSize, // Defaults to http.Agent.defaultMaxSockets 65 | 66 | // CA for origin server if necessary 67 | ca: [ fs.readFileSync('origin-server-ca.pem')], 68 | 69 | // Client certification for origin server if necessary 70 | key: fs.readFileSync('origin-server-key.pem'), 71 | cert: fs.readFileSync('origin-server-cert.pem'), 72 | 73 | proxy: { // Proxy settings 74 | host: proxyHost, // Defaults to 'localhost' 75 | port: proxyPort, // Defaults to 80 76 | localAddress: localAddress, // Local interface if necessary 77 | 78 | // Basic authorization for proxy server if necessary 79 | proxyAuth: 'user:password', 80 | 81 | // Header fields for proxy server if necessary 82 | headers: { 83 | 'User-Agent': 'Node' 84 | }, 85 | } 86 | }); 87 | 88 | var req = https.request({ 89 | host: 'example.com', 90 | port: 443, 91 | agent: tunnelingAgent 92 | }); 93 | ``` 94 | 95 | ### HTTP over HTTPS tunneling 96 | 97 | ```javascript 98 | var tunnelingAgent = tunnel.httpOverHttps({ 99 | maxSockets: poolSize, // Defaults to http.Agent.defaultMaxSockets 100 | 101 | proxy: { // Proxy settings 102 | host: proxyHost, // Defaults to 'localhost' 103 | port: proxyPort, // Defaults to 443 104 | localAddress: localAddress, // Local interface if necessary 105 | 106 | // Basic authorization for proxy server if necessary 107 | proxyAuth: 'user:password', 108 | 109 | // Header fields for proxy server if necessary 110 | headers: { 111 | 'User-Agent': 'Node' 112 | }, 113 | 114 | // CA for proxy server if necessary 115 | ca: [ fs.readFileSync('origin-server-ca.pem')], 116 | 117 | // Server name for verification if necessary 118 | servername: 'example.com', 119 | 120 | // Client certification for proxy server if necessary 121 | key: fs.readFileSync('origin-server-key.pem'), 122 | cert: fs.readFileSync('origin-server-cert.pem'), 123 | } 124 | }); 125 | 126 | var req = http.request({ 127 | host: 'example.com', 128 | port: 80, 129 | agent: tunnelingAgent 130 | }); 131 | ``` 132 | 133 | ### HTTPS over HTTPS tunneling 134 | 135 | ```javascript 136 | var tunnelingAgent = tunnel.httpsOverHttps({ 137 | maxSockets: poolSize, // Defaults to http.Agent.defaultMaxSockets 138 | 139 | // CA for origin server if necessary 140 | ca: [ fs.readFileSync('origin-server-ca.pem')], 141 | 142 | // Client certification for origin server if necessary 143 | key: fs.readFileSync('origin-server-key.pem'), 144 | cert: fs.readFileSync('origin-server-cert.pem'), 145 | 146 | proxy: { // Proxy settings 147 | host: proxyHost, // Defaults to 'localhost' 148 | port: proxyPort, // Defaults to 443 149 | localAddress: localAddress, // Local interface if necessary 150 | 151 | // Basic authorization for proxy server if necessary 152 | proxyAuth: 'user:password', 153 | 154 | // Header fields for proxy server if necessary 155 | headers: { 156 | 'User-Agent': 'Node' 157 | } 158 | 159 | // CA for proxy server if necessary 160 | ca: [ fs.readFileSync('origin-server-ca.pem')], 161 | 162 | // Server name for verification if necessary 163 | servername: 'example.com', 164 | 165 | // Client certification for proxy server if necessary 166 | key: fs.readFileSync('origin-server-key.pem'), 167 | cert: fs.readFileSync('origin-server-cert.pem'), 168 | } 169 | }); 170 | 171 | var req = https.request({ 172 | host: 'example.com', 173 | port: 443, 174 | agent: tunnelingAgent 175 | }); 176 | ``` 177 | 178 | ## CONTRIBUTORS 179 | * [Aleksis Brezas (abresas)](https://github.com/abresas) 180 | * [Jackson Tian (JacksonTian)](https://github.com/JacksonTian) 181 | * [Dmitry Sorin (1999)](https://github.com/1999) 182 | 183 | ## License 184 | 185 | Licensed under the [MIT](https://github.com/koichik/node-tunnel/blob/master/LICENSE) license. 186 | -------------------------------------------------------------------------------- /node_modules/tunnel/index.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/tunnel'); 2 | -------------------------------------------------------------------------------- /node_modules/tunnel/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "tunnel", 3 | "version": "0.0.6", 4 | "description": "Node HTTP/HTTPS Agents for tunneling proxies", 5 | "keywords": [ 6 | "http", 7 | "https", 8 | "agent", 9 | "proxy", 10 | "tunnel" 11 | ], 12 | "homepage": "https://github.com/koichik/node-tunnel/", 13 | "bugs": "https://github.com/koichik/node-tunnel/issues", 14 | "license": "MIT", 15 | "author": "Koichi Kobayashi ", 16 | "main": "./index.js", 17 | "directories": { 18 | "lib": "./lib" 19 | }, 20 | "repository": { 21 | "type": "git", 22 | "url": "https://github.com/koichik/node-tunnel.git" 23 | }, 24 | "scripts": { 25 | "test": "mocha" 26 | }, 27 | "devDependencies": { 28 | "mocha": "^5.2.0", 29 | "should": "^13.2.3" 30 | }, 31 | "engines": { 32 | "node": ">=0.6.11 <=0.7.0 || >=0.7.3" 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /node_modules/uuid/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing 2 | 3 | Please feel free to file GitHub Issues or propose Pull Requests. We're always happy to discuss improvements to this library! 4 | 5 | ## Testing 6 | 7 | ```shell 8 | npm test 9 | ``` 10 | 11 | ## Releasing 12 | 13 | Releases are supposed to be done from master, version bumping is automated through [`standard-version`](https://github.com/conventional-changelog/standard-version): 14 | 15 | ```shell 16 | npm run release -- --dry-run # verify output manually 17 | npm run release # follow the instructions from the output of this command 18 | ``` 19 | -------------------------------------------------------------------------------- /node_modules/uuid/LICENSE.md: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2010-2020 Robert Kieffer and other contributors 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 6 | 7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 10 | -------------------------------------------------------------------------------- /node_modules/uuid/dist/bin/uuid: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | require('../uuid-bin'); 3 | -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/index.js: -------------------------------------------------------------------------------- 1 | export { default as v1 } from './v1.js'; 2 | export { default as v3 } from './v3.js'; 3 | export { default as v4 } from './v4.js'; 4 | export { default as v5 } from './v5.js'; 5 | export { default as NIL } from './nil.js'; 6 | export { default as version } from './version.js'; 7 | export { default as validate } from './validate.js'; 8 | export { default as stringify } from './stringify.js'; 9 | export { default as parse } from './parse.js'; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/nil.js: -------------------------------------------------------------------------------- 1 | export default '00000000-0000-0000-0000-000000000000'; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/parse.js: -------------------------------------------------------------------------------- 1 | import validate from './validate.js'; 2 | 3 | function parse(uuid) { 4 | if (!validate(uuid)) { 5 | throw TypeError('Invalid UUID'); 6 | } 7 | 8 | var v; 9 | var arr = new Uint8Array(16); // Parse ########-....-....-....-............ 10 | 11 | arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24; 12 | arr[1] = v >>> 16 & 0xff; 13 | arr[2] = v >>> 8 & 0xff; 14 | arr[3] = v & 0xff; // Parse ........-####-....-....-............ 15 | 16 | arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8; 17 | arr[5] = v & 0xff; // Parse ........-....-####-....-............ 18 | 19 | arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8; 20 | arr[7] = v & 0xff; // Parse ........-....-....-####-............ 21 | 22 | arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8; 23 | arr[9] = v & 0xff; // Parse ........-....-....-....-############ 24 | // (Use "/" to avoid 32-bit truncation when bit-shifting high-order bytes) 25 | 26 | arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 0x10000000000 & 0xff; 27 | arr[11] = v / 0x100000000 & 0xff; 28 | arr[12] = v >>> 24 & 0xff; 29 | arr[13] = v >>> 16 & 0xff; 30 | arr[14] = v >>> 8 & 0xff; 31 | arr[15] = v & 0xff; 32 | return arr; 33 | } 34 | 35 | export default parse; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/regex.js: -------------------------------------------------------------------------------- 1 | export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/rng.js: -------------------------------------------------------------------------------- 1 | // Unique ID creation requires a high quality random # generator. In the browser we therefore 2 | // require the crypto API and do not support built-in fallback to lower quality random number 3 | // generators (like Math.random()). 4 | var getRandomValues; 5 | var rnds8 = new Uint8Array(16); 6 | export default function rng() { 7 | // lazy load so that environments that need to polyfill have a chance to do so 8 | if (!getRandomValues) { 9 | // getRandomValues needs to be invoked in a context where "this" is a Crypto implementation. Also, 10 | // find the complete implementation of crypto (msCrypto) on IE11. 11 | getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto); 12 | 13 | if (!getRandomValues) { 14 | throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported'); 15 | } 16 | } 17 | 18 | return getRandomValues(rnds8); 19 | } -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/sha1.js: -------------------------------------------------------------------------------- 1 | // Adapted from Chris Veness' SHA1 code at 2 | // http://www.movable-type.co.uk/scripts/sha1.html 3 | function f(s, x, y, z) { 4 | switch (s) { 5 | case 0: 6 | return x & y ^ ~x & z; 7 | 8 | case 1: 9 | return x ^ y ^ z; 10 | 11 | case 2: 12 | return x & y ^ x & z ^ y & z; 13 | 14 | case 3: 15 | return x ^ y ^ z; 16 | } 17 | } 18 | 19 | function ROTL(x, n) { 20 | return x << n | x >>> 32 - n; 21 | } 22 | 23 | function sha1(bytes) { 24 | var K = [0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6]; 25 | var H = [0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0]; 26 | 27 | if (typeof bytes === 'string') { 28 | var msg = unescape(encodeURIComponent(bytes)); // UTF8 escape 29 | 30 | bytes = []; 31 | 32 | for (var i = 0; i < msg.length; ++i) { 33 | bytes.push(msg.charCodeAt(i)); 34 | } 35 | } else if (!Array.isArray(bytes)) { 36 | // Convert Array-like to Array 37 | bytes = Array.prototype.slice.call(bytes); 38 | } 39 | 40 | bytes.push(0x80); 41 | var l = bytes.length / 4 + 2; 42 | var N = Math.ceil(l / 16); 43 | var M = new Array(N); 44 | 45 | for (var _i = 0; _i < N; ++_i) { 46 | var arr = new Uint32Array(16); 47 | 48 | for (var j = 0; j < 16; ++j) { 49 | arr[j] = bytes[_i * 64 + j * 4] << 24 | bytes[_i * 64 + j * 4 + 1] << 16 | bytes[_i * 64 + j * 4 + 2] << 8 | bytes[_i * 64 + j * 4 + 3]; 50 | } 51 | 52 | M[_i] = arr; 53 | } 54 | 55 | M[N - 1][14] = (bytes.length - 1) * 8 / Math.pow(2, 32); 56 | M[N - 1][14] = Math.floor(M[N - 1][14]); 57 | M[N - 1][15] = (bytes.length - 1) * 8 & 0xffffffff; 58 | 59 | for (var _i2 = 0; _i2 < N; ++_i2) { 60 | var W = new Uint32Array(80); 61 | 62 | for (var t = 0; t < 16; ++t) { 63 | W[t] = M[_i2][t]; 64 | } 65 | 66 | for (var _t = 16; _t < 80; ++_t) { 67 | W[_t] = ROTL(W[_t - 3] ^ W[_t - 8] ^ W[_t - 14] ^ W[_t - 16], 1); 68 | } 69 | 70 | var a = H[0]; 71 | var b = H[1]; 72 | var c = H[2]; 73 | var d = H[3]; 74 | var e = H[4]; 75 | 76 | for (var _t2 = 0; _t2 < 80; ++_t2) { 77 | var s = Math.floor(_t2 / 20); 78 | var T = ROTL(a, 5) + f(s, b, c, d) + e + K[s] + W[_t2] >>> 0; 79 | e = d; 80 | d = c; 81 | c = ROTL(b, 30) >>> 0; 82 | b = a; 83 | a = T; 84 | } 85 | 86 | H[0] = H[0] + a >>> 0; 87 | H[1] = H[1] + b >>> 0; 88 | H[2] = H[2] + c >>> 0; 89 | H[3] = H[3] + d >>> 0; 90 | H[4] = H[4] + e >>> 0; 91 | } 92 | 93 | return [H[0] >> 24 & 0xff, H[0] >> 16 & 0xff, H[0] >> 8 & 0xff, H[0] & 0xff, H[1] >> 24 & 0xff, H[1] >> 16 & 0xff, H[1] >> 8 & 0xff, H[1] & 0xff, H[2] >> 24 & 0xff, H[2] >> 16 & 0xff, H[2] >> 8 & 0xff, H[2] & 0xff, H[3] >> 24 & 0xff, H[3] >> 16 & 0xff, H[3] >> 8 & 0xff, H[3] & 0xff, H[4] >> 24 & 0xff, H[4] >> 16 & 0xff, H[4] >> 8 & 0xff, H[4] & 0xff]; 94 | } 95 | 96 | export default sha1; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/stringify.js: -------------------------------------------------------------------------------- 1 | import validate from './validate.js'; 2 | /** 3 | * Convert array of 16 byte values to UUID string format of the form: 4 | * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX 5 | */ 6 | 7 | var byteToHex = []; 8 | 9 | for (var i = 0; i < 256; ++i) { 10 | byteToHex.push((i + 0x100).toString(16).substr(1)); 11 | } 12 | 13 | function stringify(arr) { 14 | var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; 15 | // Note: Be careful editing this code! It's been tuned for performance 16 | // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434 17 | var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one 18 | // of the following: 19 | // - One or more input array values don't map to a hex octet (leading to 20 | // "undefined" in the uuid) 21 | // - Invalid input values for the RFC `version` or `variant` fields 22 | 23 | if (!validate(uuid)) { 24 | throw TypeError('Stringified UUID is invalid'); 25 | } 26 | 27 | return uuid; 28 | } 29 | 30 | export default stringify; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/v1.js: -------------------------------------------------------------------------------- 1 | import rng from './rng.js'; 2 | import stringify from './stringify.js'; // **`v1()` - Generate time-based UUID** 3 | // 4 | // Inspired by https://github.com/LiosK/UUID.js 5 | // and http://docs.python.org/library/uuid.html 6 | 7 | var _nodeId; 8 | 9 | var _clockseq; // Previous uuid creation time 10 | 11 | 12 | var _lastMSecs = 0; 13 | var _lastNSecs = 0; // See https://github.com/uuidjs/uuid for API details 14 | 15 | function v1(options, buf, offset) { 16 | var i = buf && offset || 0; 17 | var b = buf || new Array(16); 18 | options = options || {}; 19 | var node = options.node || _nodeId; 20 | var clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq; // node and clockseq need to be initialized to random values if they're not 21 | // specified. We do this lazily to minimize issues related to insufficient 22 | // system entropy. See #189 23 | 24 | if (node == null || clockseq == null) { 25 | var seedBytes = options.random || (options.rng || rng)(); 26 | 27 | if (node == null) { 28 | // Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1) 29 | node = _nodeId = [seedBytes[0] | 0x01, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]]; 30 | } 31 | 32 | if (clockseq == null) { 33 | // Per 4.2.2, randomize (14 bit) clockseq 34 | clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff; 35 | } 36 | } // UUID timestamps are 100 nano-second units since the Gregorian epoch, 37 | // (1582-10-15 00:00). JSNumbers aren't precise enough for this, so 38 | // time is handled internally as 'msecs' (integer milliseconds) and 'nsecs' 39 | // (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00. 40 | 41 | 42 | var msecs = options.msecs !== undefined ? options.msecs : Date.now(); // Per 4.2.1.2, use count of uuid's generated during the current clock 43 | // cycle to simulate higher resolution clock 44 | 45 | var nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1; // Time since last uuid creation (in msecs) 46 | 47 | var dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 10000; // Per 4.2.1.2, Bump clockseq on clock regression 48 | 49 | if (dt < 0 && options.clockseq === undefined) { 50 | clockseq = clockseq + 1 & 0x3fff; 51 | } // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new 52 | // time interval 53 | 54 | 55 | if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) { 56 | nsecs = 0; 57 | } // Per 4.2.1.2 Throw error if too many uuids are requested 58 | 59 | 60 | if (nsecs >= 10000) { 61 | throw new Error("uuid.v1(): Can't create more than 10M uuids/sec"); 62 | } 63 | 64 | _lastMSecs = msecs; 65 | _lastNSecs = nsecs; 66 | _clockseq = clockseq; // Per 4.1.4 - Convert from unix epoch to Gregorian epoch 67 | 68 | msecs += 12219292800000; // `time_low` 69 | 70 | var tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000; 71 | b[i++] = tl >>> 24 & 0xff; 72 | b[i++] = tl >>> 16 & 0xff; 73 | b[i++] = tl >>> 8 & 0xff; 74 | b[i++] = tl & 0xff; // `time_mid` 75 | 76 | var tmh = msecs / 0x100000000 * 10000 & 0xfffffff; 77 | b[i++] = tmh >>> 8 & 0xff; 78 | b[i++] = tmh & 0xff; // `time_high_and_version` 79 | 80 | b[i++] = tmh >>> 24 & 0xf | 0x10; // include version 81 | 82 | b[i++] = tmh >>> 16 & 0xff; // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant) 83 | 84 | b[i++] = clockseq >>> 8 | 0x80; // `clock_seq_low` 85 | 86 | b[i++] = clockseq & 0xff; // `node` 87 | 88 | for (var n = 0; n < 6; ++n) { 89 | b[i + n] = node[n]; 90 | } 91 | 92 | return buf || stringify(b); 93 | } 94 | 95 | export default v1; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/v3.js: -------------------------------------------------------------------------------- 1 | import v35 from './v35.js'; 2 | import md5 from './md5.js'; 3 | var v3 = v35('v3', 0x30, md5); 4 | export default v3; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/v35.js: -------------------------------------------------------------------------------- 1 | import stringify from './stringify.js'; 2 | import parse from './parse.js'; 3 | 4 | function stringToBytes(str) { 5 | str = unescape(encodeURIComponent(str)); // UTF8 escape 6 | 7 | var bytes = []; 8 | 9 | for (var i = 0; i < str.length; ++i) { 10 | bytes.push(str.charCodeAt(i)); 11 | } 12 | 13 | return bytes; 14 | } 15 | 16 | export var DNS = '6ba7b810-9dad-11d1-80b4-00c04fd430c8'; 17 | export var URL = '6ba7b811-9dad-11d1-80b4-00c04fd430c8'; 18 | export default function (name, version, hashfunc) { 19 | function generateUUID(value, namespace, buf, offset) { 20 | if (typeof value === 'string') { 21 | value = stringToBytes(value); 22 | } 23 | 24 | if (typeof namespace === 'string') { 25 | namespace = parse(namespace); 26 | } 27 | 28 | if (namespace.length !== 16) { 29 | throw TypeError('Namespace must be array-like (16 iterable integer values, 0-255)'); 30 | } // Compute hash of namespace and value, Per 4.3 31 | // Future: Use spread syntax when supported on all platforms, e.g. `bytes = 32 | // hashfunc([...namespace, ... value])` 33 | 34 | 35 | var bytes = new Uint8Array(16 + value.length); 36 | bytes.set(namespace); 37 | bytes.set(value, namespace.length); 38 | bytes = hashfunc(bytes); 39 | bytes[6] = bytes[6] & 0x0f | version; 40 | bytes[8] = bytes[8] & 0x3f | 0x80; 41 | 42 | if (buf) { 43 | offset = offset || 0; 44 | 45 | for (var i = 0; i < 16; ++i) { 46 | buf[offset + i] = bytes[i]; 47 | } 48 | 49 | return buf; 50 | } 51 | 52 | return stringify(bytes); 53 | } // Function#name is not settable on some platforms (#270) 54 | 55 | 56 | try { 57 | generateUUID.name = name; // eslint-disable-next-line no-empty 58 | } catch (err) {} // For CommonJS default export support 59 | 60 | 61 | generateUUID.DNS = DNS; 62 | generateUUID.URL = URL; 63 | return generateUUID; 64 | } -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/v4.js: -------------------------------------------------------------------------------- 1 | import rng from './rng.js'; 2 | import stringify from './stringify.js'; 3 | 4 | function v4(options, buf, offset) { 5 | options = options || {}; 6 | var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved` 7 | 8 | rnds[6] = rnds[6] & 0x0f | 0x40; 9 | rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided 10 | 11 | if (buf) { 12 | offset = offset || 0; 13 | 14 | for (var i = 0; i < 16; ++i) { 15 | buf[offset + i] = rnds[i]; 16 | } 17 | 18 | return buf; 19 | } 20 | 21 | return stringify(rnds); 22 | } 23 | 24 | export default v4; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/v5.js: -------------------------------------------------------------------------------- 1 | import v35 from './v35.js'; 2 | import sha1 from './sha1.js'; 3 | var v5 = v35('v5', 0x50, sha1); 4 | export default v5; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/validate.js: -------------------------------------------------------------------------------- 1 | import REGEX from './regex.js'; 2 | 3 | function validate(uuid) { 4 | return typeof uuid === 'string' && REGEX.test(uuid); 5 | } 6 | 7 | export default validate; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-browser/version.js: -------------------------------------------------------------------------------- 1 | import validate from './validate.js'; 2 | 3 | function version(uuid) { 4 | if (!validate(uuid)) { 5 | throw TypeError('Invalid UUID'); 6 | } 7 | 8 | return parseInt(uuid.substr(14, 1), 16); 9 | } 10 | 11 | export default version; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/index.js: -------------------------------------------------------------------------------- 1 | export { default as v1 } from './v1.js'; 2 | export { default as v3 } from './v3.js'; 3 | export { default as v4 } from './v4.js'; 4 | export { default as v5 } from './v5.js'; 5 | export { default as NIL } from './nil.js'; 6 | export { default as version } from './version.js'; 7 | export { default as validate } from './validate.js'; 8 | export { default as stringify } from './stringify.js'; 9 | export { default as parse } from './parse.js'; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/md5.js: -------------------------------------------------------------------------------- 1 | import crypto from 'crypto'; 2 | 3 | function md5(bytes) { 4 | if (Array.isArray(bytes)) { 5 | bytes = Buffer.from(bytes); 6 | } else if (typeof bytes === 'string') { 7 | bytes = Buffer.from(bytes, 'utf8'); 8 | } 9 | 10 | return crypto.createHash('md5').update(bytes).digest(); 11 | } 12 | 13 | export default md5; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/nil.js: -------------------------------------------------------------------------------- 1 | export default '00000000-0000-0000-0000-000000000000'; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/parse.js: -------------------------------------------------------------------------------- 1 | import validate from './validate.js'; 2 | 3 | function parse(uuid) { 4 | if (!validate(uuid)) { 5 | throw TypeError('Invalid UUID'); 6 | } 7 | 8 | let v; 9 | const arr = new Uint8Array(16); // Parse ########-....-....-....-............ 10 | 11 | arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24; 12 | arr[1] = v >>> 16 & 0xff; 13 | arr[2] = v >>> 8 & 0xff; 14 | arr[3] = v & 0xff; // Parse ........-####-....-....-............ 15 | 16 | arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8; 17 | arr[5] = v & 0xff; // Parse ........-....-####-....-............ 18 | 19 | arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8; 20 | arr[7] = v & 0xff; // Parse ........-....-....-####-............ 21 | 22 | arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8; 23 | arr[9] = v & 0xff; // Parse ........-....-....-....-############ 24 | // (Use "/" to avoid 32-bit truncation when bit-shifting high-order bytes) 25 | 26 | arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 0x10000000000 & 0xff; 27 | arr[11] = v / 0x100000000 & 0xff; 28 | arr[12] = v >>> 24 & 0xff; 29 | arr[13] = v >>> 16 & 0xff; 30 | arr[14] = v >>> 8 & 0xff; 31 | arr[15] = v & 0xff; 32 | return arr; 33 | } 34 | 35 | export default parse; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/regex.js: -------------------------------------------------------------------------------- 1 | export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/rng.js: -------------------------------------------------------------------------------- 1 | import crypto from 'crypto'; 2 | const rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate 3 | 4 | let poolPtr = rnds8Pool.length; 5 | export default function rng() { 6 | if (poolPtr > rnds8Pool.length - 16) { 7 | crypto.randomFillSync(rnds8Pool); 8 | poolPtr = 0; 9 | } 10 | 11 | return rnds8Pool.slice(poolPtr, poolPtr += 16); 12 | } -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/sha1.js: -------------------------------------------------------------------------------- 1 | import crypto from 'crypto'; 2 | 3 | function sha1(bytes) { 4 | if (Array.isArray(bytes)) { 5 | bytes = Buffer.from(bytes); 6 | } else if (typeof bytes === 'string') { 7 | bytes = Buffer.from(bytes, 'utf8'); 8 | } 9 | 10 | return crypto.createHash('sha1').update(bytes).digest(); 11 | } 12 | 13 | export default sha1; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/stringify.js: -------------------------------------------------------------------------------- 1 | import validate from './validate.js'; 2 | /** 3 | * Convert array of 16 byte values to UUID string format of the form: 4 | * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX 5 | */ 6 | 7 | const byteToHex = []; 8 | 9 | for (let i = 0; i < 256; ++i) { 10 | byteToHex.push((i + 0x100).toString(16).substr(1)); 11 | } 12 | 13 | function stringify(arr, offset = 0) { 14 | // Note: Be careful editing this code! It's been tuned for performance 15 | // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434 16 | const uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one 17 | // of the following: 18 | // - One or more input array values don't map to a hex octet (leading to 19 | // "undefined" in the uuid) 20 | // - Invalid input values for the RFC `version` or `variant` fields 21 | 22 | if (!validate(uuid)) { 23 | throw TypeError('Stringified UUID is invalid'); 24 | } 25 | 26 | return uuid; 27 | } 28 | 29 | export default stringify; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/v1.js: -------------------------------------------------------------------------------- 1 | import rng from './rng.js'; 2 | import stringify from './stringify.js'; // **`v1()` - Generate time-based UUID** 3 | // 4 | // Inspired by https://github.com/LiosK/UUID.js 5 | // and http://docs.python.org/library/uuid.html 6 | 7 | let _nodeId; 8 | 9 | let _clockseq; // Previous uuid creation time 10 | 11 | 12 | let _lastMSecs = 0; 13 | let _lastNSecs = 0; // See https://github.com/uuidjs/uuid for API details 14 | 15 | function v1(options, buf, offset) { 16 | let i = buf && offset || 0; 17 | const b = buf || new Array(16); 18 | options = options || {}; 19 | let node = options.node || _nodeId; 20 | let clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq; // node and clockseq need to be initialized to random values if they're not 21 | // specified. We do this lazily to minimize issues related to insufficient 22 | // system entropy. See #189 23 | 24 | if (node == null || clockseq == null) { 25 | const seedBytes = options.random || (options.rng || rng)(); 26 | 27 | if (node == null) { 28 | // Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1) 29 | node = _nodeId = [seedBytes[0] | 0x01, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]]; 30 | } 31 | 32 | if (clockseq == null) { 33 | // Per 4.2.2, randomize (14 bit) clockseq 34 | clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff; 35 | } 36 | } // UUID timestamps are 100 nano-second units since the Gregorian epoch, 37 | // (1582-10-15 00:00). JSNumbers aren't precise enough for this, so 38 | // time is handled internally as 'msecs' (integer milliseconds) and 'nsecs' 39 | // (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00. 40 | 41 | 42 | let msecs = options.msecs !== undefined ? options.msecs : Date.now(); // Per 4.2.1.2, use count of uuid's generated during the current clock 43 | // cycle to simulate higher resolution clock 44 | 45 | let nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1; // Time since last uuid creation (in msecs) 46 | 47 | const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 10000; // Per 4.2.1.2, Bump clockseq on clock regression 48 | 49 | if (dt < 0 && options.clockseq === undefined) { 50 | clockseq = clockseq + 1 & 0x3fff; 51 | } // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new 52 | // time interval 53 | 54 | 55 | if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) { 56 | nsecs = 0; 57 | } // Per 4.2.1.2 Throw error if too many uuids are requested 58 | 59 | 60 | if (nsecs >= 10000) { 61 | throw new Error("uuid.v1(): Can't create more than 10M uuids/sec"); 62 | } 63 | 64 | _lastMSecs = msecs; 65 | _lastNSecs = nsecs; 66 | _clockseq = clockseq; // Per 4.1.4 - Convert from unix epoch to Gregorian epoch 67 | 68 | msecs += 12219292800000; // `time_low` 69 | 70 | const tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000; 71 | b[i++] = tl >>> 24 & 0xff; 72 | b[i++] = tl >>> 16 & 0xff; 73 | b[i++] = tl >>> 8 & 0xff; 74 | b[i++] = tl & 0xff; // `time_mid` 75 | 76 | const tmh = msecs / 0x100000000 * 10000 & 0xfffffff; 77 | b[i++] = tmh >>> 8 & 0xff; 78 | b[i++] = tmh & 0xff; // `time_high_and_version` 79 | 80 | b[i++] = tmh >>> 24 & 0xf | 0x10; // include version 81 | 82 | b[i++] = tmh >>> 16 & 0xff; // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant) 83 | 84 | b[i++] = clockseq >>> 8 | 0x80; // `clock_seq_low` 85 | 86 | b[i++] = clockseq & 0xff; // `node` 87 | 88 | for (let n = 0; n < 6; ++n) { 89 | b[i + n] = node[n]; 90 | } 91 | 92 | return buf || stringify(b); 93 | } 94 | 95 | export default v1; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/v3.js: -------------------------------------------------------------------------------- 1 | import v35 from './v35.js'; 2 | import md5 from './md5.js'; 3 | const v3 = v35('v3', 0x30, md5); 4 | export default v3; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/v35.js: -------------------------------------------------------------------------------- 1 | import stringify from './stringify.js'; 2 | import parse from './parse.js'; 3 | 4 | function stringToBytes(str) { 5 | str = unescape(encodeURIComponent(str)); // UTF8 escape 6 | 7 | const bytes = []; 8 | 9 | for (let i = 0; i < str.length; ++i) { 10 | bytes.push(str.charCodeAt(i)); 11 | } 12 | 13 | return bytes; 14 | } 15 | 16 | export const DNS = '6ba7b810-9dad-11d1-80b4-00c04fd430c8'; 17 | export const URL = '6ba7b811-9dad-11d1-80b4-00c04fd430c8'; 18 | export default function (name, version, hashfunc) { 19 | function generateUUID(value, namespace, buf, offset) { 20 | if (typeof value === 'string') { 21 | value = stringToBytes(value); 22 | } 23 | 24 | if (typeof namespace === 'string') { 25 | namespace = parse(namespace); 26 | } 27 | 28 | if (namespace.length !== 16) { 29 | throw TypeError('Namespace must be array-like (16 iterable integer values, 0-255)'); 30 | } // Compute hash of namespace and value, Per 4.3 31 | // Future: Use spread syntax when supported on all platforms, e.g. `bytes = 32 | // hashfunc([...namespace, ... value])` 33 | 34 | 35 | let bytes = new Uint8Array(16 + value.length); 36 | bytes.set(namespace); 37 | bytes.set(value, namespace.length); 38 | bytes = hashfunc(bytes); 39 | bytes[6] = bytes[6] & 0x0f | version; 40 | bytes[8] = bytes[8] & 0x3f | 0x80; 41 | 42 | if (buf) { 43 | offset = offset || 0; 44 | 45 | for (let i = 0; i < 16; ++i) { 46 | buf[offset + i] = bytes[i]; 47 | } 48 | 49 | return buf; 50 | } 51 | 52 | return stringify(bytes); 53 | } // Function#name is not settable on some platforms (#270) 54 | 55 | 56 | try { 57 | generateUUID.name = name; // eslint-disable-next-line no-empty 58 | } catch (err) {} // For CommonJS default export support 59 | 60 | 61 | generateUUID.DNS = DNS; 62 | generateUUID.URL = URL; 63 | return generateUUID; 64 | } -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/v4.js: -------------------------------------------------------------------------------- 1 | import rng from './rng.js'; 2 | import stringify from './stringify.js'; 3 | 4 | function v4(options, buf, offset) { 5 | options = options || {}; 6 | const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved` 7 | 8 | rnds[6] = rnds[6] & 0x0f | 0x40; 9 | rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided 10 | 11 | if (buf) { 12 | offset = offset || 0; 13 | 14 | for (let i = 0; i < 16; ++i) { 15 | buf[offset + i] = rnds[i]; 16 | } 17 | 18 | return buf; 19 | } 20 | 21 | return stringify(rnds); 22 | } 23 | 24 | export default v4; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/v5.js: -------------------------------------------------------------------------------- 1 | import v35 from './v35.js'; 2 | import sha1 from './sha1.js'; 3 | const v5 = v35('v5', 0x50, sha1); 4 | export default v5; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/validate.js: -------------------------------------------------------------------------------- 1 | import REGEX from './regex.js'; 2 | 3 | function validate(uuid) { 4 | return typeof uuid === 'string' && REGEX.test(uuid); 5 | } 6 | 7 | export default validate; -------------------------------------------------------------------------------- /node_modules/uuid/dist/esm-node/version.js: -------------------------------------------------------------------------------- 1 | import validate from './validate.js'; 2 | 3 | function version(uuid) { 4 | if (!validate(uuid)) { 5 | throw TypeError('Invalid UUID'); 6 | } 7 | 8 | return parseInt(uuid.substr(14, 1), 16); 9 | } 10 | 11 | export default version; -------------------------------------------------------------------------------- /node_modules/uuid/dist/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | Object.defineProperty(exports, "v1", { 7 | enumerable: true, 8 | get: function () { 9 | return _v.default; 10 | } 11 | }); 12 | Object.defineProperty(exports, "v3", { 13 | enumerable: true, 14 | get: function () { 15 | return _v2.default; 16 | } 17 | }); 18 | Object.defineProperty(exports, "v4", { 19 | enumerable: true, 20 | get: function () { 21 | return _v3.default; 22 | } 23 | }); 24 | Object.defineProperty(exports, "v5", { 25 | enumerable: true, 26 | get: function () { 27 | return _v4.default; 28 | } 29 | }); 30 | Object.defineProperty(exports, "NIL", { 31 | enumerable: true, 32 | get: function () { 33 | return _nil.default; 34 | } 35 | }); 36 | Object.defineProperty(exports, "version", { 37 | enumerable: true, 38 | get: function () { 39 | return _version.default; 40 | } 41 | }); 42 | Object.defineProperty(exports, "validate", { 43 | enumerable: true, 44 | get: function () { 45 | return _validate.default; 46 | } 47 | }); 48 | Object.defineProperty(exports, "stringify", { 49 | enumerable: true, 50 | get: function () { 51 | return _stringify.default; 52 | } 53 | }); 54 | Object.defineProperty(exports, "parse", { 55 | enumerable: true, 56 | get: function () { 57 | return _parse.default; 58 | } 59 | }); 60 | 61 | var _v = _interopRequireDefault(require("./v1.js")); 62 | 63 | var _v2 = _interopRequireDefault(require("./v3.js")); 64 | 65 | var _v3 = _interopRequireDefault(require("./v4.js")); 66 | 67 | var _v4 = _interopRequireDefault(require("./v5.js")); 68 | 69 | var _nil = _interopRequireDefault(require("./nil.js")); 70 | 71 | var _version = _interopRequireDefault(require("./version.js")); 72 | 73 | var _validate = _interopRequireDefault(require("./validate.js")); 74 | 75 | var _stringify = _interopRequireDefault(require("./stringify.js")); 76 | 77 | var _parse = _interopRequireDefault(require("./parse.js")); 78 | 79 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } -------------------------------------------------------------------------------- /node_modules/uuid/dist/md5.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = void 0; 7 | 8 | var _crypto = _interopRequireDefault(require("crypto")); 9 | 10 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 11 | 12 | function md5(bytes) { 13 | if (Array.isArray(bytes)) { 14 | bytes = Buffer.from(bytes); 15 | } else if (typeof bytes === 'string') { 16 | bytes = Buffer.from(bytes, 'utf8'); 17 | } 18 | 19 | return _crypto.default.createHash('md5').update(bytes).digest(); 20 | } 21 | 22 | var _default = md5; 23 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/uuid/dist/nil.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = void 0; 7 | var _default = '00000000-0000-0000-0000-000000000000'; 8 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/uuid/dist/parse.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = void 0; 7 | 8 | var _validate = _interopRequireDefault(require("./validate.js")); 9 | 10 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 11 | 12 | function parse(uuid) { 13 | if (!(0, _validate.default)(uuid)) { 14 | throw TypeError('Invalid UUID'); 15 | } 16 | 17 | let v; 18 | const arr = new Uint8Array(16); // Parse ########-....-....-....-............ 19 | 20 | arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24; 21 | arr[1] = v >>> 16 & 0xff; 22 | arr[2] = v >>> 8 & 0xff; 23 | arr[3] = v & 0xff; // Parse ........-####-....-....-............ 24 | 25 | arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8; 26 | arr[5] = v & 0xff; // Parse ........-....-####-....-............ 27 | 28 | arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8; 29 | arr[7] = v & 0xff; // Parse ........-....-....-####-............ 30 | 31 | arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8; 32 | arr[9] = v & 0xff; // Parse ........-....-....-....-############ 33 | // (Use "/" to avoid 32-bit truncation when bit-shifting high-order bytes) 34 | 35 | arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 0x10000000000 & 0xff; 36 | arr[11] = v / 0x100000000 & 0xff; 37 | arr[12] = v >>> 24 & 0xff; 38 | arr[13] = v >>> 16 & 0xff; 39 | arr[14] = v >>> 8 & 0xff; 40 | arr[15] = v & 0xff; 41 | return arr; 42 | } 43 | 44 | var _default = parse; 45 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/uuid/dist/regex.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = void 0; 7 | var _default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i; 8 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/uuid/dist/rng-browser.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = rng; 7 | // Unique ID creation requires a high quality random # generator. In the browser we therefore 8 | // require the crypto API and do not support built-in fallback to lower quality random number 9 | // generators (like Math.random()). 10 | let getRandomValues; 11 | const rnds8 = new Uint8Array(16); 12 | 13 | function rng() { 14 | // lazy load so that environments that need to polyfill have a chance to do so 15 | if (!getRandomValues) { 16 | // getRandomValues needs to be invoked in a context where "this" is a Crypto implementation. Also, 17 | // find the complete implementation of crypto (msCrypto) on IE11. 18 | getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto); 19 | 20 | if (!getRandomValues) { 21 | throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported'); 22 | } 23 | } 24 | 25 | return getRandomValues(rnds8); 26 | } -------------------------------------------------------------------------------- /node_modules/uuid/dist/rng.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = rng; 7 | 8 | var _crypto = _interopRequireDefault(require("crypto")); 9 | 10 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 11 | 12 | const rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate 13 | 14 | let poolPtr = rnds8Pool.length; 15 | 16 | function rng() { 17 | if (poolPtr > rnds8Pool.length - 16) { 18 | _crypto.default.randomFillSync(rnds8Pool); 19 | 20 | poolPtr = 0; 21 | } 22 | 23 | return rnds8Pool.slice(poolPtr, poolPtr += 16); 24 | } -------------------------------------------------------------------------------- /node_modules/uuid/dist/sha1-browser.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = void 0; 7 | 8 | // Adapted from Chris Veness' SHA1 code at 9 | // http://www.movable-type.co.uk/scripts/sha1.html 10 | function f(s, x, y, z) { 11 | switch (s) { 12 | case 0: 13 | return x & y ^ ~x & z; 14 | 15 | case 1: 16 | return x ^ y ^ z; 17 | 18 | case 2: 19 | return x & y ^ x & z ^ y & z; 20 | 21 | case 3: 22 | return x ^ y ^ z; 23 | } 24 | } 25 | 26 | function ROTL(x, n) { 27 | return x << n | x >>> 32 - n; 28 | } 29 | 30 | function sha1(bytes) { 31 | const K = [0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6]; 32 | const H = [0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0]; 33 | 34 | if (typeof bytes === 'string') { 35 | const msg = unescape(encodeURIComponent(bytes)); // UTF8 escape 36 | 37 | bytes = []; 38 | 39 | for (let i = 0; i < msg.length; ++i) { 40 | bytes.push(msg.charCodeAt(i)); 41 | } 42 | } else if (!Array.isArray(bytes)) { 43 | // Convert Array-like to Array 44 | bytes = Array.prototype.slice.call(bytes); 45 | } 46 | 47 | bytes.push(0x80); 48 | const l = bytes.length / 4 + 2; 49 | const N = Math.ceil(l / 16); 50 | const M = new Array(N); 51 | 52 | for (let i = 0; i < N; ++i) { 53 | const arr = new Uint32Array(16); 54 | 55 | for (let j = 0; j < 16; ++j) { 56 | arr[j] = bytes[i * 64 + j * 4] << 24 | bytes[i * 64 + j * 4 + 1] << 16 | bytes[i * 64 + j * 4 + 2] << 8 | bytes[i * 64 + j * 4 + 3]; 57 | } 58 | 59 | M[i] = arr; 60 | } 61 | 62 | M[N - 1][14] = (bytes.length - 1) * 8 / Math.pow(2, 32); 63 | M[N - 1][14] = Math.floor(M[N - 1][14]); 64 | M[N - 1][15] = (bytes.length - 1) * 8 & 0xffffffff; 65 | 66 | for (let i = 0; i < N; ++i) { 67 | const W = new Uint32Array(80); 68 | 69 | for (let t = 0; t < 16; ++t) { 70 | W[t] = M[i][t]; 71 | } 72 | 73 | for (let t = 16; t < 80; ++t) { 74 | W[t] = ROTL(W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16], 1); 75 | } 76 | 77 | let a = H[0]; 78 | let b = H[1]; 79 | let c = H[2]; 80 | let d = H[3]; 81 | let e = H[4]; 82 | 83 | for (let t = 0; t < 80; ++t) { 84 | const s = Math.floor(t / 20); 85 | const T = ROTL(a, 5) + f(s, b, c, d) + e + K[s] + W[t] >>> 0; 86 | e = d; 87 | d = c; 88 | c = ROTL(b, 30) >>> 0; 89 | b = a; 90 | a = T; 91 | } 92 | 93 | H[0] = H[0] + a >>> 0; 94 | H[1] = H[1] + b >>> 0; 95 | H[2] = H[2] + c >>> 0; 96 | H[3] = H[3] + d >>> 0; 97 | H[4] = H[4] + e >>> 0; 98 | } 99 | 100 | return [H[0] >> 24 & 0xff, H[0] >> 16 & 0xff, H[0] >> 8 & 0xff, H[0] & 0xff, H[1] >> 24 & 0xff, H[1] >> 16 & 0xff, H[1] >> 8 & 0xff, H[1] & 0xff, H[2] >> 24 & 0xff, H[2] >> 16 & 0xff, H[2] >> 8 & 0xff, H[2] & 0xff, H[3] >> 24 & 0xff, H[3] >> 16 & 0xff, H[3] >> 8 & 0xff, H[3] & 0xff, H[4] >> 24 & 0xff, H[4] >> 16 & 0xff, H[4] >> 8 & 0xff, H[4] & 0xff]; 101 | } 102 | 103 | var _default = sha1; 104 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/uuid/dist/sha1.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = void 0; 7 | 8 | var _crypto = _interopRequireDefault(require("crypto")); 9 | 10 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 11 | 12 | function sha1(bytes) { 13 | if (Array.isArray(bytes)) { 14 | bytes = Buffer.from(bytes); 15 | } else if (typeof bytes === 'string') { 16 | bytes = Buffer.from(bytes, 'utf8'); 17 | } 18 | 19 | return _crypto.default.createHash('sha1').update(bytes).digest(); 20 | } 21 | 22 | var _default = sha1; 23 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/uuid/dist/stringify.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = void 0; 7 | 8 | var _validate = _interopRequireDefault(require("./validate.js")); 9 | 10 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 11 | 12 | /** 13 | * Convert array of 16 byte values to UUID string format of the form: 14 | * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX 15 | */ 16 | const byteToHex = []; 17 | 18 | for (let i = 0; i < 256; ++i) { 19 | byteToHex.push((i + 0x100).toString(16).substr(1)); 20 | } 21 | 22 | function stringify(arr, offset = 0) { 23 | // Note: Be careful editing this code! It's been tuned for performance 24 | // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434 25 | const uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one 26 | // of the following: 27 | // - One or more input array values don't map to a hex octet (leading to 28 | // "undefined" in the uuid) 29 | // - Invalid input values for the RFC `version` or `variant` fields 30 | 31 | if (!(0, _validate.default)(uuid)) { 32 | throw TypeError('Stringified UUID is invalid'); 33 | } 34 | 35 | return uuid; 36 | } 37 | 38 | var _default = stringify; 39 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/uuid/dist/umd/uuidNIL.min.js: -------------------------------------------------------------------------------- 1 | !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define(n):(e="undefined"!=typeof globalThis?globalThis:e||self).uuidNIL=n()}(this,(function(){"use strict";return"00000000-0000-0000-0000-000000000000"})); -------------------------------------------------------------------------------- /node_modules/uuid/dist/umd/uuidParse.min.js: -------------------------------------------------------------------------------- 1 | !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define(n):(e="undefined"!=typeof globalThis?globalThis:e||self).uuidParse=n()}(this,(function(){"use strict";var e=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;return function(n){if(!function(n){return"string"==typeof n&&e.test(n)}(n))throw TypeError("Invalid UUID");var t,i=new Uint8Array(16);return i[0]=(t=parseInt(n.slice(0,8),16))>>>24,i[1]=t>>>16&255,i[2]=t>>>8&255,i[3]=255&t,i[4]=(t=parseInt(n.slice(9,13),16))>>>8,i[5]=255&t,i[6]=(t=parseInt(n.slice(14,18),16))>>>8,i[7]=255&t,i[8]=(t=parseInt(n.slice(19,23),16))>>>8,i[9]=255&t,i[10]=(t=parseInt(n.slice(24,36),16))/1099511627776&255,i[11]=t/4294967296&255,i[12]=t>>>24&255,i[13]=t>>>16&255,i[14]=t>>>8&255,i[15]=255&t,i}})); -------------------------------------------------------------------------------- /node_modules/uuid/dist/umd/uuidStringify.min.js: -------------------------------------------------------------------------------- 1 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).uuidStringify=t()}(this,(function(){"use strict";var e=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function t(t){return"string"==typeof t&&e.test(t)}for(var i=[],n=0;n<256;++n)i.push((n+256).toString(16).substr(1));return function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,f=(i[e[n+0]]+i[e[n+1]]+i[e[n+2]]+i[e[n+3]]+"-"+i[e[n+4]]+i[e[n+5]]+"-"+i[e[n+6]]+i[e[n+7]]+"-"+i[e[n+8]]+i[e[n+9]]+"-"+i[e[n+10]]+i[e[n+11]]+i[e[n+12]]+i[e[n+13]]+i[e[n+14]]+i[e[n+15]]).toLowerCase();if(!t(f))throw TypeError("Stringified UUID is invalid");return f}})); -------------------------------------------------------------------------------- /node_modules/uuid/dist/umd/uuidValidate.min.js: -------------------------------------------------------------------------------- 1 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).uuidValidate=t()}(this,(function(){"use strict";var e=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;return function(t){return"string"==typeof t&&e.test(t)}})); -------------------------------------------------------------------------------- /node_modules/uuid/dist/umd/uuidVersion.min.js: -------------------------------------------------------------------------------- 1 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).uuidVersion=t()}(this,(function(){"use strict";var e=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;return function(t){if(!function(t){return"string"==typeof t&&e.test(t)}(t))throw TypeError("Invalid UUID");return parseInt(t.substr(14,1),16)}})); -------------------------------------------------------------------------------- /node_modules/uuid/dist/umd/uuidv1.min.js: -------------------------------------------------------------------------------- 1 | !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o():"function"==typeof define&&define.amd?define(o):(e="undefined"!=typeof globalThis?globalThis:e||self).uuidv1=o()}(this,(function(){"use strict";var e,o=new Uint8Array(16);function t(){if(!e&&!(e="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return e(o)}var n=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function r(e){return"string"==typeof e&&n.test(e)}for(var i,u,s=[],a=0;a<256;++a)s.push((a+256).toString(16).substr(1));var d=0,f=0;return function(e,o,n){var a=o&&n||0,c=o||new Array(16),l=(e=e||{}).node||i,p=void 0!==e.clockseq?e.clockseq:u;if(null==l||null==p){var v=e.random||(e.rng||t)();null==l&&(l=i=[1|v[0],v[1],v[2],v[3],v[4],v[5]]),null==p&&(p=u=16383&(v[6]<<8|v[7]))}var y=void 0!==e.msecs?e.msecs:Date.now(),m=void 0!==e.nsecs?e.nsecs:f+1,g=y-d+(m-f)/1e4;if(g<0&&void 0===e.clockseq&&(p=p+1&16383),(g<0||y>d)&&void 0===e.nsecs&&(m=0),m>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");d=y,f=m,u=p;var h=(1e4*(268435455&(y+=122192928e5))+m)%4294967296;c[a++]=h>>>24&255,c[a++]=h>>>16&255,c[a++]=h>>>8&255,c[a++]=255&h;var w=y/4294967296*1e4&268435455;c[a++]=w>>>8&255,c[a++]=255&w,c[a++]=w>>>24&15|16,c[a++]=w>>>16&255,c[a++]=p>>>8|128,c[a++]=255&p;for(var b=0;b<6;++b)c[a+b]=l[b];return o||function(e){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,t=(s[e[o+0]]+s[e[o+1]]+s[e[o+2]]+s[e[o+3]]+"-"+s[e[o+4]]+s[e[o+5]]+"-"+s[e[o+6]]+s[e[o+7]]+"-"+s[e[o+8]]+s[e[o+9]]+"-"+s[e[o+10]]+s[e[o+11]]+s[e[o+12]]+s[e[o+13]]+s[e[o+14]]+s[e[o+15]]).toLowerCase();if(!r(t))throw TypeError("Stringified UUID is invalid");return t}(c)}})); -------------------------------------------------------------------------------- /node_modules/uuid/dist/umd/uuidv3.min.js: -------------------------------------------------------------------------------- 1 | !function(n,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define(r):(n="undefined"!=typeof globalThis?globalThis:n||self).uuidv3=r()}(this,(function(){"use strict";var n=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function r(r){return"string"==typeof r&&n.test(r)}for(var e=[],t=0;t<256;++t)e.push((t+256).toString(16).substr(1));function i(n){return 14+(n+64>>>9<<4)+1}function o(n,r){var e=(65535&n)+(65535&r);return(n>>16)+(r>>16)+(e>>16)<<16|65535&e}function a(n,r,e,t,i,a){return o((f=o(o(r,n),o(t,a)))<<(u=i)|f>>>32-u,e);var f,u}function f(n,r,e,t,i,o,f){return a(r&e|~r&t,n,r,i,o,f)}function u(n,r,e,t,i,o,f){return a(r&t|e&~t,n,r,i,o,f)}function c(n,r,e,t,i,o,f){return a(r^e^t,n,r,i,o,f)}function s(n,r,e,t,i,o,f){return a(e^(r|~t),n,r,i,o,f)}return function(n,t,i){function o(n,o,a,f){if("string"==typeof n&&(n=function(n){n=unescape(encodeURIComponent(n));for(var r=[],e=0;e>>24,t[1]=e>>>16&255,t[2]=e>>>8&255,t[3]=255&e,t[4]=(e=parseInt(n.slice(9,13),16))>>>8,t[5]=255&e,t[6]=(e=parseInt(n.slice(14,18),16))>>>8,t[7]=255&e,t[8]=(e=parseInt(n.slice(19,23),16))>>>8,t[9]=255&e,t[10]=(e=parseInt(n.slice(24,36),16))/1099511627776&255,t[11]=e/4294967296&255,t[12]=e>>>24&255,t[13]=e>>>16&255,t[14]=e>>>8&255,t[15]=255&e,t}(o)),16!==o.length)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");var u=new Uint8Array(16+n.length);if(u.set(o),u.set(n,o.length),(u=i(u))[6]=15&u[6]|t,u[8]=63&u[8]|128,a){f=f||0;for(var c=0;c<16;++c)a[f+c]=u[c];return a}return function(n){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=(e[n[t+0]]+e[n[t+1]]+e[n[t+2]]+e[n[t+3]]+"-"+e[n[t+4]]+e[n[t+5]]+"-"+e[n[t+6]]+e[n[t+7]]+"-"+e[n[t+8]]+e[n[t+9]]+"-"+e[n[t+10]]+e[n[t+11]]+e[n[t+12]]+e[n[t+13]]+e[n[t+14]]+e[n[t+15]]).toLowerCase();if(!r(i))throw TypeError("Stringified UUID is invalid");return i}(u)}try{o.name=n}catch(n){}return o.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",o.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8",o}("v3",48,(function(n){if("string"==typeof n){var r=unescape(encodeURIComponent(n));n=new Uint8Array(r.length);for(var e=0;e>5]>>>i%32&255,a=parseInt(t.charAt(o>>>4&15)+t.charAt(15&o),16);r.push(a)}return r}(function(n,r){n[r>>5]|=128<>5]|=(255&n[t/8])<1&&void 0!==arguments[1]?arguments[1]:0,o=(i[t[e+0]]+i[t[e+1]]+i[t[e+2]]+i[t[e+3]]+"-"+i[t[e+4]]+i[t[e+5]]+"-"+i[t[e+6]]+i[t[e+7]]+"-"+i[t[e+8]]+i[t[e+9]]+"-"+i[t[e+10]]+i[t[e+11]]+i[t[e+12]]+i[t[e+13]]+i[t[e+14]]+i[t[e+15]]).toLowerCase();if(!r(o))throw TypeError("Stringified UUID is invalid");return o}(u)}})); -------------------------------------------------------------------------------- /node_modules/uuid/dist/umd/uuidv5.min.js: -------------------------------------------------------------------------------- 1 | !function(r,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(r="undefined"!=typeof globalThis?globalThis:r||self).uuidv5=e()}(this,(function(){"use strict";var r=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function e(e){return"string"==typeof e&&r.test(e)}for(var t=[],n=0;n<256;++n)t.push((n+256).toString(16).substr(1));function a(r,e,t,n){switch(r){case 0:return e&t^~e&n;case 1:return e^t^n;case 2:return e&t^e&n^t&n;case 3:return e^t^n}}function o(r,e){return r<>>32-e}return function(r,n,a){function o(r,o,i,f){if("string"==typeof r&&(r=function(r){r=unescape(encodeURIComponent(r));for(var e=[],t=0;t>>24,n[1]=t>>>16&255,n[2]=t>>>8&255,n[3]=255&t,n[4]=(t=parseInt(r.slice(9,13),16))>>>8,n[5]=255&t,n[6]=(t=parseInt(r.slice(14,18),16))>>>8,n[7]=255&t,n[8]=(t=parseInt(r.slice(19,23),16))>>>8,n[9]=255&t,n[10]=(t=parseInt(r.slice(24,36),16))/1099511627776&255,n[11]=t/4294967296&255,n[12]=t>>>24&255,n[13]=t>>>16&255,n[14]=t>>>8&255,n[15]=255&t,n}(o)),16!==o.length)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");var s=new Uint8Array(16+r.length);if(s.set(o),s.set(r,o.length),(s=a(s))[6]=15&s[6]|n,s[8]=63&s[8]|128,i){f=f||0;for(var u=0;u<16;++u)i[f+u]=s[u];return i}return function(r){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,a=(t[r[n+0]]+t[r[n+1]]+t[r[n+2]]+t[r[n+3]]+"-"+t[r[n+4]]+t[r[n+5]]+"-"+t[r[n+6]]+t[r[n+7]]+"-"+t[r[n+8]]+t[r[n+9]]+"-"+t[r[n+10]]+t[r[n+11]]+t[r[n+12]]+t[r[n+13]]+t[r[n+14]]+t[r[n+15]]).toLowerCase();if(!e(a))throw TypeError("Stringified UUID is invalid");return a}(s)}try{o.name=r}catch(r){}return o.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",o.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8",o}("v5",80,(function(r){var e=[1518500249,1859775393,2400959708,3395469782],t=[1732584193,4023233417,2562383102,271733878,3285377520];if("string"==typeof r){var n=unescape(encodeURIComponent(r));r=[];for(var i=0;i>>0;A=U,U=w,w=o(b,30)>>>0,b=g,g=C}t[0]=t[0]+g>>>0,t[1]=t[1]+b>>>0,t[2]=t[2]+w>>>0,t[3]=t[3]+U>>>0,t[4]=t[4]+A>>>0}return[t[0]>>24&255,t[0]>>16&255,t[0]>>8&255,255&t[0],t[1]>>24&255,t[1]>>16&255,t[1]>>8&255,255&t[1],t[2]>>24&255,t[2]>>16&255,t[2]>>8&255,255&t[2],t[3]>>24&255,t[3]>>16&255,t[3]>>8&255,255&t[3],t[4]>>24&255,t[4]>>16&255,t[4]>>8&255,255&t[4]]}))})); -------------------------------------------------------------------------------- /node_modules/uuid/dist/uuid-bin.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | var _assert = _interopRequireDefault(require("assert")); 4 | 5 | var _v = _interopRequireDefault(require("./v1.js")); 6 | 7 | var _v2 = _interopRequireDefault(require("./v3.js")); 8 | 9 | var _v3 = _interopRequireDefault(require("./v4.js")); 10 | 11 | var _v4 = _interopRequireDefault(require("./v5.js")); 12 | 13 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 14 | 15 | function usage() { 16 | console.log('Usage:'); 17 | console.log(' uuid'); 18 | console.log(' uuid v1'); 19 | console.log(' uuid v3 '); 20 | console.log(' uuid v4'); 21 | console.log(' uuid v5 '); 22 | console.log(' uuid --help'); 23 | console.log('\nNote: may be "URL" or "DNS" to use the corresponding UUIDs defined by RFC4122'); 24 | } 25 | 26 | const args = process.argv.slice(2); 27 | 28 | if (args.indexOf('--help') >= 0) { 29 | usage(); 30 | process.exit(0); 31 | } 32 | 33 | const version = args.shift() || 'v4'; 34 | 35 | switch (version) { 36 | case 'v1': 37 | console.log((0, _v.default)()); 38 | break; 39 | 40 | case 'v3': 41 | { 42 | const name = args.shift(); 43 | let namespace = args.shift(); 44 | (0, _assert.default)(name != null, 'v3 name not specified'); 45 | (0, _assert.default)(namespace != null, 'v3 namespace not specified'); 46 | 47 | if (namespace === 'URL') { 48 | namespace = _v2.default.URL; 49 | } 50 | 51 | if (namespace === 'DNS') { 52 | namespace = _v2.default.DNS; 53 | } 54 | 55 | console.log((0, _v2.default)(name, namespace)); 56 | break; 57 | } 58 | 59 | case 'v4': 60 | console.log((0, _v3.default)()); 61 | break; 62 | 63 | case 'v5': 64 | { 65 | const name = args.shift(); 66 | let namespace = args.shift(); 67 | (0, _assert.default)(name != null, 'v5 name not specified'); 68 | (0, _assert.default)(namespace != null, 'v5 namespace not specified'); 69 | 70 | if (namespace === 'URL') { 71 | namespace = _v4.default.URL; 72 | } 73 | 74 | if (namespace === 'DNS') { 75 | namespace = _v4.default.DNS; 76 | } 77 | 78 | console.log((0, _v4.default)(name, namespace)); 79 | break; 80 | } 81 | 82 | default: 83 | usage(); 84 | process.exit(1); 85 | } -------------------------------------------------------------------------------- /node_modules/uuid/dist/v1.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = void 0; 7 | 8 | var _rng = _interopRequireDefault(require("./rng.js")); 9 | 10 | var _stringify = _interopRequireDefault(require("./stringify.js")); 11 | 12 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 13 | 14 | // **`v1()` - Generate time-based UUID** 15 | // 16 | // Inspired by https://github.com/LiosK/UUID.js 17 | // and http://docs.python.org/library/uuid.html 18 | let _nodeId; 19 | 20 | let _clockseq; // Previous uuid creation time 21 | 22 | 23 | let _lastMSecs = 0; 24 | let _lastNSecs = 0; // See https://github.com/uuidjs/uuid for API details 25 | 26 | function v1(options, buf, offset) { 27 | let i = buf && offset || 0; 28 | const b = buf || new Array(16); 29 | options = options || {}; 30 | let node = options.node || _nodeId; 31 | let clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq; // node and clockseq need to be initialized to random values if they're not 32 | // specified. We do this lazily to minimize issues related to insufficient 33 | // system entropy. See #189 34 | 35 | if (node == null || clockseq == null) { 36 | const seedBytes = options.random || (options.rng || _rng.default)(); 37 | 38 | if (node == null) { 39 | // Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1) 40 | node = _nodeId = [seedBytes[0] | 0x01, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]]; 41 | } 42 | 43 | if (clockseq == null) { 44 | // Per 4.2.2, randomize (14 bit) clockseq 45 | clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff; 46 | } 47 | } // UUID timestamps are 100 nano-second units since the Gregorian epoch, 48 | // (1582-10-15 00:00). JSNumbers aren't precise enough for this, so 49 | // time is handled internally as 'msecs' (integer milliseconds) and 'nsecs' 50 | // (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00. 51 | 52 | 53 | let msecs = options.msecs !== undefined ? options.msecs : Date.now(); // Per 4.2.1.2, use count of uuid's generated during the current clock 54 | // cycle to simulate higher resolution clock 55 | 56 | let nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1; // Time since last uuid creation (in msecs) 57 | 58 | const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 10000; // Per 4.2.1.2, Bump clockseq on clock regression 59 | 60 | if (dt < 0 && options.clockseq === undefined) { 61 | clockseq = clockseq + 1 & 0x3fff; 62 | } // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new 63 | // time interval 64 | 65 | 66 | if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) { 67 | nsecs = 0; 68 | } // Per 4.2.1.2 Throw error if too many uuids are requested 69 | 70 | 71 | if (nsecs >= 10000) { 72 | throw new Error("uuid.v1(): Can't create more than 10M uuids/sec"); 73 | } 74 | 75 | _lastMSecs = msecs; 76 | _lastNSecs = nsecs; 77 | _clockseq = clockseq; // Per 4.1.4 - Convert from unix epoch to Gregorian epoch 78 | 79 | msecs += 12219292800000; // `time_low` 80 | 81 | const tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000; 82 | b[i++] = tl >>> 24 & 0xff; 83 | b[i++] = tl >>> 16 & 0xff; 84 | b[i++] = tl >>> 8 & 0xff; 85 | b[i++] = tl & 0xff; // `time_mid` 86 | 87 | const tmh = msecs / 0x100000000 * 10000 & 0xfffffff; 88 | b[i++] = tmh >>> 8 & 0xff; 89 | b[i++] = tmh & 0xff; // `time_high_and_version` 90 | 91 | b[i++] = tmh >>> 24 & 0xf | 0x10; // include version 92 | 93 | b[i++] = tmh >>> 16 & 0xff; // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant) 94 | 95 | b[i++] = clockseq >>> 8 | 0x80; // `clock_seq_low` 96 | 97 | b[i++] = clockseq & 0xff; // `node` 98 | 99 | for (let n = 0; n < 6; ++n) { 100 | b[i + n] = node[n]; 101 | } 102 | 103 | return buf || (0, _stringify.default)(b); 104 | } 105 | 106 | var _default = v1; 107 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/uuid/dist/v3.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = void 0; 7 | 8 | var _v = _interopRequireDefault(require("./v35.js")); 9 | 10 | var _md = _interopRequireDefault(require("./md5.js")); 11 | 12 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 13 | 14 | const v3 = (0, _v.default)('v3', 0x30, _md.default); 15 | var _default = v3; 16 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/uuid/dist/v35.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = _default; 7 | exports.URL = exports.DNS = void 0; 8 | 9 | var _stringify = _interopRequireDefault(require("./stringify.js")); 10 | 11 | var _parse = _interopRequireDefault(require("./parse.js")); 12 | 13 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 14 | 15 | function stringToBytes(str) { 16 | str = unescape(encodeURIComponent(str)); // UTF8 escape 17 | 18 | const bytes = []; 19 | 20 | for (let i = 0; i < str.length; ++i) { 21 | bytes.push(str.charCodeAt(i)); 22 | } 23 | 24 | return bytes; 25 | } 26 | 27 | const DNS = '6ba7b810-9dad-11d1-80b4-00c04fd430c8'; 28 | exports.DNS = DNS; 29 | const URL = '6ba7b811-9dad-11d1-80b4-00c04fd430c8'; 30 | exports.URL = URL; 31 | 32 | function _default(name, version, hashfunc) { 33 | function generateUUID(value, namespace, buf, offset) { 34 | if (typeof value === 'string') { 35 | value = stringToBytes(value); 36 | } 37 | 38 | if (typeof namespace === 'string') { 39 | namespace = (0, _parse.default)(namespace); 40 | } 41 | 42 | if (namespace.length !== 16) { 43 | throw TypeError('Namespace must be array-like (16 iterable integer values, 0-255)'); 44 | } // Compute hash of namespace and value, Per 4.3 45 | // Future: Use spread syntax when supported on all platforms, e.g. `bytes = 46 | // hashfunc([...namespace, ... value])` 47 | 48 | 49 | let bytes = new Uint8Array(16 + value.length); 50 | bytes.set(namespace); 51 | bytes.set(value, namespace.length); 52 | bytes = hashfunc(bytes); 53 | bytes[6] = bytes[6] & 0x0f | version; 54 | bytes[8] = bytes[8] & 0x3f | 0x80; 55 | 56 | if (buf) { 57 | offset = offset || 0; 58 | 59 | for (let i = 0; i < 16; ++i) { 60 | buf[offset + i] = bytes[i]; 61 | } 62 | 63 | return buf; 64 | } 65 | 66 | return (0, _stringify.default)(bytes); 67 | } // Function#name is not settable on some platforms (#270) 68 | 69 | 70 | try { 71 | generateUUID.name = name; // eslint-disable-next-line no-empty 72 | } catch (err) {} // For CommonJS default export support 73 | 74 | 75 | generateUUID.DNS = DNS; 76 | generateUUID.URL = URL; 77 | return generateUUID; 78 | } -------------------------------------------------------------------------------- /node_modules/uuid/dist/v4.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = void 0; 7 | 8 | var _rng = _interopRequireDefault(require("./rng.js")); 9 | 10 | var _stringify = _interopRequireDefault(require("./stringify.js")); 11 | 12 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 13 | 14 | function v4(options, buf, offset) { 15 | options = options || {}; 16 | 17 | const rnds = options.random || (options.rng || _rng.default)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved` 18 | 19 | 20 | rnds[6] = rnds[6] & 0x0f | 0x40; 21 | rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided 22 | 23 | if (buf) { 24 | offset = offset || 0; 25 | 26 | for (let i = 0; i < 16; ++i) { 27 | buf[offset + i] = rnds[i]; 28 | } 29 | 30 | return buf; 31 | } 32 | 33 | return (0, _stringify.default)(rnds); 34 | } 35 | 36 | var _default = v4; 37 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/uuid/dist/v5.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = void 0; 7 | 8 | var _v = _interopRequireDefault(require("./v35.js")); 9 | 10 | var _sha = _interopRequireDefault(require("./sha1.js")); 11 | 12 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 13 | 14 | const v5 = (0, _v.default)('v5', 0x50, _sha.default); 15 | var _default = v5; 16 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/uuid/dist/validate.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = void 0; 7 | 8 | var _regex = _interopRequireDefault(require("./regex.js")); 9 | 10 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 11 | 12 | function validate(uuid) { 13 | return typeof uuid === 'string' && _regex.default.test(uuid); 14 | } 15 | 16 | var _default = validate; 17 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/uuid/dist/version.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = void 0; 7 | 8 | var _validate = _interopRequireDefault(require("./validate.js")); 9 | 10 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 11 | 12 | function version(uuid) { 13 | if (!(0, _validate.default)(uuid)) { 14 | throw TypeError('Invalid UUID'); 15 | } 16 | 17 | return parseInt(uuid.substr(14, 1), 16); 18 | } 19 | 20 | var _default = version; 21 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/uuid/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "uuid", 3 | "version": "8.3.2", 4 | "description": "RFC4122 (v1, v4, and v5) UUIDs", 5 | "commitlint": { 6 | "extends": [ 7 | "@commitlint/config-conventional" 8 | ] 9 | }, 10 | "keywords": [ 11 | "uuid", 12 | "guid", 13 | "rfc4122" 14 | ], 15 | "license": "MIT", 16 | "bin": { 17 | "uuid": "./dist/bin/uuid" 18 | }, 19 | "sideEffects": false, 20 | "main": "./dist/index.js", 21 | "exports": { 22 | ".": { 23 | "node": { 24 | "module": "./dist/esm-node/index.js", 25 | "require": "./dist/index.js", 26 | "import": "./wrapper.mjs" 27 | }, 28 | "default": "./dist/esm-browser/index.js" 29 | }, 30 | "./package.json": "./package.json" 31 | }, 32 | "module": "./dist/esm-node/index.js", 33 | "browser": { 34 | "./dist/md5.js": "./dist/md5-browser.js", 35 | "./dist/rng.js": "./dist/rng-browser.js", 36 | "./dist/sha1.js": "./dist/sha1-browser.js", 37 | "./dist/esm-node/index.js": "./dist/esm-browser/index.js" 38 | }, 39 | "files": [ 40 | "CHANGELOG.md", 41 | "CONTRIBUTING.md", 42 | "LICENSE.md", 43 | "README.md", 44 | "dist", 45 | "wrapper.mjs" 46 | ], 47 | "devDependencies": { 48 | "@babel/cli": "7.11.6", 49 | "@babel/core": "7.11.6", 50 | "@babel/preset-env": "7.11.5", 51 | "@commitlint/cli": "11.0.0", 52 | "@commitlint/config-conventional": "11.0.0", 53 | "@rollup/plugin-node-resolve": "9.0.0", 54 | "babel-eslint": "10.1.0", 55 | "bundlewatch": "0.3.1", 56 | "eslint": "7.10.0", 57 | "eslint-config-prettier": "6.12.0", 58 | "eslint-config-standard": "14.1.1", 59 | "eslint-plugin-import": "2.22.1", 60 | "eslint-plugin-node": "11.1.0", 61 | "eslint-plugin-prettier": "3.1.4", 62 | "eslint-plugin-promise": "4.2.1", 63 | "eslint-plugin-standard": "4.0.1", 64 | "husky": "4.3.0", 65 | "jest": "25.5.4", 66 | "lint-staged": "10.4.0", 67 | "npm-run-all": "4.1.5", 68 | "optional-dev-dependency": "2.0.1", 69 | "prettier": "2.1.2", 70 | "random-seed": "0.3.0", 71 | "rollup": "2.28.2", 72 | "rollup-plugin-terser": "7.0.2", 73 | "runmd": "1.3.2", 74 | "standard-version": "9.0.0" 75 | }, 76 | "optionalDevDependencies": { 77 | "@wdio/browserstack-service": "6.4.0", 78 | "@wdio/cli": "6.4.0", 79 | "@wdio/jasmine-framework": "6.4.0", 80 | "@wdio/local-runner": "6.4.0", 81 | "@wdio/spec-reporter": "6.4.0", 82 | "@wdio/static-server-service": "6.4.0", 83 | "@wdio/sync": "6.4.0" 84 | }, 85 | "scripts": { 86 | "examples:browser:webpack:build": "cd examples/browser-webpack && npm install && npm run build", 87 | "examples:browser:rollup:build": "cd examples/browser-rollup && npm install && npm run build", 88 | "examples:node:commonjs:test": "cd examples/node-commonjs && npm install && npm test", 89 | "examples:node:esmodules:test": "cd examples/node-esmodules && npm install && npm test", 90 | "lint": "npm run eslint:check && npm run prettier:check", 91 | "eslint:check": "eslint src/ test/ examples/ *.js", 92 | "eslint:fix": "eslint --fix src/ test/ examples/ *.js", 93 | "pretest": "[ -n $CI ] || npm run build", 94 | "test": "BABEL_ENV=commonjs node --throw-deprecation node_modules/.bin/jest test/unit/", 95 | "pretest:browser": "optional-dev-dependency && npm run build && npm-run-all --parallel examples:browser:**", 96 | "test:browser": "wdio run ./wdio.conf.js", 97 | "pretest:node": "npm run build", 98 | "test:node": "npm-run-all --parallel examples:node:**", 99 | "test:pack": "./scripts/testpack.sh", 100 | "pretest:benchmark": "npm run build", 101 | "test:benchmark": "cd examples/benchmark && npm install && npm test", 102 | "prettier:check": "prettier --ignore-path .prettierignore --check '**/*.{js,jsx,json,md}'", 103 | "prettier:fix": "prettier --ignore-path .prettierignore --write '**/*.{js,jsx,json,md}'", 104 | "bundlewatch": "npm run pretest:browser && bundlewatch --config bundlewatch.config.json", 105 | "md": "runmd --watch --output=README.md README_js.md", 106 | "docs": "( node --version | grep -q 'v12' ) && ( npm run build && runmd --output=README.md README_js.md )", 107 | "docs:diff": "npm run docs && git diff --quiet README.md", 108 | "build": "./scripts/build.sh", 109 | "prepack": "npm run build", 110 | "release": "standard-version --no-verify" 111 | }, 112 | "repository": { 113 | "type": "git", 114 | "url": "https://github.com/uuidjs/uuid.git" 115 | }, 116 | "husky": { 117 | "hooks": { 118 | "commit-msg": "commitlint -E HUSKY_GIT_PARAMS", 119 | "pre-commit": "lint-staged" 120 | } 121 | }, 122 | "lint-staged": { 123 | "*.{js,jsx,json,md}": [ 124 | "prettier --write" 125 | ], 126 | "*.{js,jsx}": [ 127 | "eslint --fix" 128 | ] 129 | }, 130 | "standard-version": { 131 | "scripts": { 132 | "postchangelog": "prettier --write CHANGELOG.md" 133 | } 134 | } 135 | } 136 | -------------------------------------------------------------------------------- /node_modules/uuid/wrapper.mjs: -------------------------------------------------------------------------------- 1 | import uuid from './dist/index.js'; 2 | export const v1 = uuid.v1; 3 | export const v3 = uuid.v3; 4 | export const v4 = uuid.v4; 5 | export const v5 = uuid.v5; 6 | export const NIL = uuid.NIL; 7 | export const version = uuid.version; 8 | export const validate = uuid.validate; 9 | export const stringify = uuid.stringify; 10 | export const parse = uuid.parse; 11 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vmactions-Solaris", 3 | "version": "1.1.4", 4 | "lockfileVersion": 2, 5 | "requires": true, 6 | "packages": { 7 | "": { 8 | "name": "vmactions-Solaris", 9 | "version": "1.1.4", 10 | "license": "MIT", 11 | "dependencies": { 12 | "@actions/core": "^1.9.1", 13 | "@actions/exec": "^1.1.1" 14 | } 15 | }, 16 | "node_modules/@actions/core": { 17 | "version": "1.9.1", 18 | "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.9.1.tgz", 19 | "integrity": "sha512-5ad+U2YGrmmiw6du20AQW5XuWo7UKN2052FjSV7MX+Wfjf8sCqcsZe62NfgHys4QI4/Y+vQvLKYL8jWtA1ZBTA==", 20 | "dependencies": { 21 | "@actions/http-client": "^2.0.1", 22 | "uuid": "^8.3.2" 23 | } 24 | }, 25 | "node_modules/@actions/exec": { 26 | "version": "1.1.1", 27 | "resolved": "https://registry.npmjs.org/@actions/exec/-/exec-1.1.1.tgz", 28 | "integrity": "sha512-+sCcHHbVdk93a0XT19ECtO/gIXoxvdsgQLzb2fE2/5sIZmWQuluYyjPQtrtTHdU1YzTZ7bAPN4sITq2xi1679w==", 29 | "dependencies": { 30 | "@actions/io": "^1.0.1" 31 | } 32 | }, 33 | "node_modules/@actions/http-client": { 34 | "version": "2.0.1", 35 | "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.0.1.tgz", 36 | "integrity": "sha512-PIXiMVtz6VvyaRsGY268qvj57hXQEpsYogYOu2nrQhlf+XCGmZstmuZBbAybUl1nQGnvS1k1eEsQ69ZoD7xlSw==", 37 | "dependencies": { 38 | "tunnel": "^0.0.6" 39 | } 40 | }, 41 | "node_modules/@actions/io": { 42 | "version": "1.1.2", 43 | "resolved": "https://registry.npmjs.org/@actions/io/-/io-1.1.2.tgz", 44 | "integrity": "sha512-d+RwPlMp+2qmBfeLYPLXuSRykDIFEwdTA0MMxzS9kh4kvP1ftrc/9fzy6pX6qAjthdXruHQ6/6kjT/DNo5ALuw==" 45 | }, 46 | "node_modules/tunnel": { 47 | "version": "0.0.6", 48 | "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", 49 | "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", 50 | "engines": { 51 | "node": ">=0.6.11 <=0.7.0 || >=0.7.3" 52 | } 53 | }, 54 | "node_modules/uuid": { 55 | "version": "8.3.2", 56 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", 57 | "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", 58 | "bin": { 59 | "uuid": "dist/bin/uuid" 60 | } 61 | } 62 | }, 63 | "dependencies": { 64 | "@actions/core": { 65 | "version": "1.9.1", 66 | "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.9.1.tgz", 67 | "integrity": "sha512-5ad+U2YGrmmiw6du20AQW5XuWo7UKN2052FjSV7MX+Wfjf8sCqcsZe62NfgHys4QI4/Y+vQvLKYL8jWtA1ZBTA==", 68 | "requires": { 69 | "@actions/http-client": "^2.0.1", 70 | "uuid": "^8.3.2" 71 | } 72 | }, 73 | "@actions/exec": { 74 | "version": "1.1.1", 75 | "resolved": "https://registry.npmjs.org/@actions/exec/-/exec-1.1.1.tgz", 76 | "integrity": "sha512-+sCcHHbVdk93a0XT19ECtO/gIXoxvdsgQLzb2fE2/5sIZmWQuluYyjPQtrtTHdU1YzTZ7bAPN4sITq2xi1679w==", 77 | "requires": { 78 | "@actions/io": "^1.0.1" 79 | } 80 | }, 81 | "@actions/http-client": { 82 | "version": "2.0.1", 83 | "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.0.1.tgz", 84 | "integrity": "sha512-PIXiMVtz6VvyaRsGY268qvj57hXQEpsYogYOu2nrQhlf+XCGmZstmuZBbAybUl1nQGnvS1k1eEsQ69ZoD7xlSw==", 85 | "requires": { 86 | "tunnel": "^0.0.6" 87 | } 88 | }, 89 | "@actions/io": { 90 | "version": "1.1.2", 91 | "resolved": "https://registry.npmjs.org/@actions/io/-/io-1.1.2.tgz", 92 | "integrity": "sha512-d+RwPlMp+2qmBfeLYPLXuSRykDIFEwdTA0MMxzS9kh4kvP1ftrc/9fzy6pX6qAjthdXruHQ6/6kjT/DNo5ALuw==" 93 | }, 94 | "tunnel": { 95 | "version": "0.0.6", 96 | "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", 97 | "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==" 98 | }, 99 | "uuid": { 100 | "version": "8.3.2", 101 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", 102 | "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" 103 | } 104 | } 105 | } 106 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vmactions-Solaris", 3 | "version": "1.1.4", 4 | "description": "GitHub actions for Solaris", 5 | "main": "index.js", 6 | "repository": { 7 | "type": "git", 8 | "url": "git+https://github.com/vmactions/solaris-vm.git" 9 | }, 10 | "keywords": [ 11 | "GitHub", 12 | "Actions", 13 | "Solaris" 14 | ], 15 | "author": "", 16 | "license": "MIT", 17 | "bugs": { 18 | "url": "https://github.com/vmactions/solaris-vm/issues" 19 | }, 20 | "homepage": "https://github.com/vmactions/solaris-vm", 21 | "dependencies": { 22 | "@actions/core": "^1.9.1", 23 | "@actions/exec": "^1.1.1" 24 | } 25 | } 26 | --------------------------------------------------------------------------------