6 Commits

Author SHA1 Message Date
Renée Kooi
e24fd328aa 2.0.2 2023-05-18 14:32:14 +02:00
Renée
d77db2eb23 Fix tool-cache usage (#45)
* cache log

* log

* log

* use resolved ver for cache

* build

* log cache

* log

* use version as key

* deps

* loggggggg

* method name

* improve log

* ci: tweak versions

* include version for commit deps

* trailing

* mistake
2023-05-18 13:30:28 +01:00
Automated
ddee6faec6 Rebuild 2023-01-16 09:27:32 +00:00
dependabot[bot]
dfa210dd0b Bump esbuild from 0.16.17 to 0.17.0 (#43)
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.16.17 to 0.17.0.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.16.17...v0.17.0)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-16 10:26:58 +01:00
Automated
a64a1dc5e1 Rebuild 2022-12-07 09:13:10 +00:00
dependabot[bot]
64c2ecb313 Bump esbuild from 0.15.18 to 0.16.0 (#42)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-07 10:12:43 +01:00
8 changed files with 891 additions and 783 deletions

View File

@@ -9,7 +9,7 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- run: npm install
- uses: EndBug/add-and-commit@v4
with:

View File

@@ -6,7 +6,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Install dependencies
run: npm install
- name: Run tests
@@ -18,7 +18,7 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
zig-version: [0.7.0, 0.8.0, 0.9.0, master]
zig-version: [0.7.0, 0.8.0, 0.9.0, 0.10.0]
include:
- os: ubuntu-latest
zig-version: 0.5.0

View File

@@ -4,6 +4,9 @@ All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).
## 2.0.2
* Fix tool-cache usage, this should speed up the action if zig was already downloaded before. [#45](https://github.com/goto-bus-stop/setup-zig/pull/45)
## 2.0.1
* Update docs to v2

1623
dist/index.js vendored

File diff suppressed because it is too large Load Diff

View File

@@ -1,3 +1,5 @@
'use strict'
const os = require('os')
const path = require('path')
const semver = require('semver')
@@ -9,20 +11,30 @@ const {
resolveVersion
} = require('./versions')
const TOOL_NAME = 'zig'
async function downloadZig (platform, version) {
const ext = extForPlatform(platform)
const { downloadUrl, variantName } = version.includes('+')
const { downloadUrl, variantName, version: useVersion } = version.includes('+')
? resolveCommit(platform, version)
: await resolveVersion(platform, version)
const cachedPath = cache.find(TOOL_NAME, useVersion)
if (cachedPath) {
actions.info(`using cached zig install: ${cachedPath}`)
return cachedPath
}
actions.info(`no cached version found. downloading zig ${variantName}`)
const downloadPath = await cache.downloadTool(downloadUrl)
const zigPath = ext === 'zip'
? await cache.extractZip(downloadPath)
: await cache.extractTar(downloadPath, undefined, 'x')
const binPath = path.join(zigPath, variantName)
const cachePath = await cache.cacheDir(binPath, 'zig', variantName)
const cachePath = await cache.cacheDir(binPath, TOOL_NAME, useVersion)
actions.info(`added zig ${useVersion} to the tool cache`)
return cachePath
}
@@ -34,13 +46,11 @@ async function main () {
return
}
let zigPath = cache.find('zig', version)
if (!zigPath) {
zigPath = await downloadZig(os.platform(), version)
}
const zigPath = await downloadZig(os.platform(), version)
// Add the `zig` binary to the $PATH
actions.addPath(zigPath)
actions.info(`zig installed at ${zigPath}`)
}
main().catch((err) => {

View File

@@ -1,7 +1,7 @@
{
"name": "setup-zig",
"description": "Use the zig compiler in your Github Action",
"version": "2.0.1",
"version": "2.0.2",
"author": "Renée Kooi <renee@kooi.me>",
"bugs": {
"url": "https://github.com/goto-bus-stop/setup-zig/issues"
@@ -13,7 +13,7 @@
"simple-get": "^4.0.0"
},
"devDependencies": {
"esbuild": "^0.15.13",
"esbuild": "^0.17.19",
"standard": "^17.0.0"
},
"homepage": "https://github.com/goto-bus-stop/setup-zig",

12
test.js
View File

@@ -7,20 +7,24 @@ const {
async function test () {
assert.deepEqual(resolveCommit('linux', '0.6.0+4b48fccad'), {
downloadUrl: 'https://ziglang.org/builds/zig-linux-x86_64-0.6.0+4b48fccad.tar.xz',
variantName: 'zig-linux-x86_64-0.6.0+4b48fccad'
variantName: 'zig-linux-x86_64-0.6.0+4b48fccad',
version: '0.6.0+4b48fccad'
})
assert.deepEqual(resolveCommit('win32', '0.6.0+4b48fccad'), {
downloadUrl: 'https://ziglang.org/builds/zig-windows-x86_64-0.6.0+4b48fccad.zip',
variantName: 'zig-windows-x86_64-0.6.0+4b48fccad'
variantName: 'zig-windows-x86_64-0.6.0+4b48fccad',
version: '0.6.0+4b48fccad'
})
assert.deepEqual(await resolveVersion('linux', '0.7.0'), {
downloadUrl: 'https://ziglang.org/download/0.7.0/zig-linux-x86_64-0.7.0.tar.xz',
variantName: 'zig-linux-x86_64-0.7.0'
variantName: 'zig-linux-x86_64-0.7.0',
version: '0.7.0'
})
assert.deepEqual(await resolveVersion('win32', '0.4.0'), {
downloadUrl: 'https://ziglang.org/download/0.4.0/zig-windows-x86_64-0.4.0.zip',
variantName: 'zig-windows-x86_64-0.4.0'
variantName: 'zig-windows-x86_64-0.4.0',
version: '0.4.0'
})
await assert.doesNotReject(resolveVersion('linux', 'master'))
await assert.doesNotReject(resolveVersion('win32', 'master'))

View File

@@ -21,7 +21,7 @@ function resolveCommit (platform, version) {
const downloadUrl = `https://ziglang.org/builds/zig-${addrhost}-${version}.${ext}`
const variantName = `zig-${addrhost}-${version}`
return { downloadUrl, variantName }
return { downloadUrl, variantName, version }
}
function getJSON (opts) {
@@ -59,7 +59,7 @@ async function resolveVersion (platform, version) {
const downloadUrl = meta[host].tarball
const variantName = path.basename(meta[host].tarball).replace(`.${ext}`, '')
return { downloadUrl, variantName }
return { downloadUrl, variantName, version: useVersion || version }
}
module.exports = {