@crossdelta/platform-sdk 0.26.11 → 0.26.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,15 @@ All notable changes to `@crossdelta/platform-sdk` will be documented in this fil
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.26.12] - 2026-10-28
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
- **`check-image-tag-exists` finds existing tags again.** The runner sets the `repository-owner`
|
|
12
|
+
input, declared without a default, to an empty string, which skipped the fallback to
|
|
13
|
+
`$GITHUB_REPOSITORY_OWNER`; the lookup asked `/orgs//packages/…`, got 404 and reported every tag
|
|
14
|
+
as missing, so a re-run build job rebuilt an image GHCR already held. An empty owner now falls back
|
|
15
|
+
like the prefix does.
|
|
16
|
+
|
|
8
17
|
## [0.26.11] - 2026-10-28
|
|
9
18
|
|
|
10
19
|
### Changed
|
|
@@ -22,6 +22,16 @@ const PAGE_SIZE = 100
|
|
|
22
22
|
const resolveRepositoryPrefix = (input, env) =>
|
|
23
23
|
input || env.GHCR_REPOSITORY_PREFIX || env.GITHUB_REPOSITORY?.split('/')[1] || 'platform'
|
|
24
24
|
|
|
25
|
+
/**
|
|
26
|
+
* Resolves the GHCR package owner: the explicit input, else $GITHUB_REPOSITORY_OWNER. The runner sets
|
|
27
|
+
* a declared input without a default to '', so an empty input has to fall back here; an empty owner
|
|
28
|
+
* asks `/orgs//packages/…`, which answers 404 and reads as "missing".
|
|
29
|
+
* @param {string} input - The action's repository-owner input, possibly empty
|
|
30
|
+
* @param {Record<string, string | undefined>} env - Process environment
|
|
31
|
+
* @returns {string}
|
|
32
|
+
*/
|
|
33
|
+
const resolveRepositoryOwner = (input, env) => input || env.GITHUB_REPOSITORY_OWNER || ''
|
|
34
|
+
|
|
25
35
|
/**
|
|
26
36
|
* Checks if the target tag exists in a list of container versions.
|
|
27
37
|
* @param {Object[]} versions - Array of version objects from GitHub API
|
|
@@ -102,4 +112,10 @@ const createGhcrClient = ({ owner, prefix, token, maxPages = 5, fetchImpl = fetc
|
|
|
102
112
|
return { lookupTag }
|
|
103
113
|
}
|
|
104
114
|
|
|
105
|
-
module.exports = {
|
|
115
|
+
module.exports = {
|
|
116
|
+
createGhcrClient,
|
|
117
|
+
describeLookup,
|
|
118
|
+
resolveRepositoryOwner,
|
|
119
|
+
resolveRepositoryPrefix,
|
|
120
|
+
tagExistsInVersions,
|
|
121
|
+
}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
const { appendFileSync } = require('node:fs')
|
|
18
18
|
const { exit } = require('node:process')
|
|
19
|
-
const { createGhcrClient, describeLookup, resolveRepositoryPrefix } = require('./ghcr.js')
|
|
19
|
+
const { createGhcrClient, describeLookup, resolveRepositoryOwner, resolveRepositoryPrefix } = require('./ghcr.js')
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
22
|
* Builds environment variable keys for GitHub Actions inputs.
|
|
@@ -71,7 +71,7 @@ const imageTag = getInput('image-tag', { required: true })
|
|
|
71
71
|
const githubToken = getInput('github-token', { required: true })
|
|
72
72
|
|
|
73
73
|
// Optional inputs - defaults from environment for portability
|
|
74
|
-
const repositoryOwner = getInput('repository-owner',
|
|
74
|
+
const repositoryOwner = resolveRepositoryOwner(getInput('repository-owner'), process.env)
|
|
75
75
|
const repositoryPrefix = resolveRepositoryPrefix(getInput('repository-prefix'), process.env)
|
|
76
76
|
const maxPages = Number(getInput('max-pages', { defaultValue: '5' }))
|
|
77
77
|
|