gowalk-cicd 1.0.206 → 1.0.207
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/action/action.yml
CHANGED
|
@@ -458,6 +458,7 @@ runs:
|
|
|
458
458
|
if: ${{ inputs.archive == 'true' && inputs.candidate-binary == '' }}
|
|
459
459
|
shell: bash
|
|
460
460
|
env:
|
|
461
|
+
CONFIGURATION: ${{ inputs.configuration || env.CFG_CONFIGURATION }}
|
|
461
462
|
PROJECT: ${{ inputs.project || env.CFG_PROJECT }}
|
|
462
463
|
WORKSPACE: ${{ inputs.workspace || env.CFG_WORKSPACE }}
|
|
463
464
|
TEAM_ID: ${{ inputs.team-id || env.CFG_TEAM_ID }}
|
|
@@ -102,9 +102,8 @@ def _entitlements_from_configs(
|
|
|
102
102
|
there — a missed entitlements file costs a clearer error, a wrong one costs
|
|
103
103
|
a wrong App ID edit.
|
|
104
104
|
|
|
105
|
-
Only the
|
|
106
|
-
|
|
107
|
-
only when neither exists) decides provisioning. An entitlement wired
|
|
105
|
+
Only the archive configuration counts. Callers pass that configuration
|
|
106
|
+
alone when provisioning. An entitlement wired
|
|
108
107
|
into Debug alone — the standard way to simulator-test an Apple-granted
|
|
109
108
|
capability (CarPlay) before the grant lands — must NOT force that
|
|
110
109
|
capability onto the App ID for the archive.
|
|
@@ -132,14 +131,14 @@ def _entitlements_from_configs(
|
|
|
132
131
|
return ""
|
|
133
132
|
|
|
134
133
|
|
|
135
|
-
def discover_signable_targets(project_path: str) -> list[dict]:
|
|
134
|
+
def discover_signable_targets(project_path: str, configuration: str = "Release") -> list[dict]:
|
|
136
135
|
"""Return one entry per signable native target.
|
|
137
136
|
|
|
138
137
|
Each entry:
|
|
139
138
|
``{"name": str, "bundle_id": str, "config_ids": [str,...],
|
|
140
139
|
"entitlements": str}`` where ``config_ids`` is the list of
|
|
141
|
-
XCBuildConfiguration
|
|
142
|
-
|
|
140
|
+
selected archive XCBuildConfiguration UUID whose ``buildSettings`` dict
|
|
141
|
+
we need to patch, and ``entitlements`` is the target's
|
|
143
142
|
CODE_SIGN_ENTITLEMENTS path relative to the project directory ("" when the
|
|
144
143
|
target declares none).
|
|
145
144
|
"""
|
|
@@ -155,10 +154,20 @@ def discover_signable_targets(project_path: str) -> list[dict]:
|
|
|
155
154
|
name = obj.get("name") or "<unknown>"
|
|
156
155
|
config_list = objects.get(obj.get("buildConfigurationList")) or {}
|
|
157
156
|
config_ids = list(config_list.get("buildConfigurations") or [])
|
|
158
|
-
|
|
157
|
+
selected = [cid for cid in config_ids
|
|
158
|
+
if (objects.get(cid) or {}).get("name") == configuration]
|
|
159
|
+
if len(selected) != 1:
|
|
160
|
+
raise SystemExit(
|
|
161
|
+
f"discover_signable_targets: {name!r} has no unique "
|
|
162
|
+
f"{configuration!r} configuration"
|
|
163
|
+
)
|
|
164
|
+
bundle_id = _bundle_id_from_configs(objects, selected)
|
|
159
165
|
if not bundle_id:
|
|
160
|
-
|
|
161
|
-
|
|
166
|
+
raise SystemExit(
|
|
167
|
+
f"discover_signable_targets: {name!r} has no literal "
|
|
168
|
+
f"PRODUCT_BUNDLE_IDENTIFIER in {configuration!r}"
|
|
169
|
+
)
|
|
170
|
+
config_ids = selected
|
|
162
171
|
targets.append(
|
|
163
172
|
{
|
|
164
173
|
"name": name,
|
|
@@ -197,7 +197,7 @@ def main() -> None:
|
|
|
197
197
|
token = make_jwt(env("ASC_KEY_ID"), env("ASC_ISSUER_ID"), env("ASC_KEY_PATH"))
|
|
198
198
|
creds_dir = _resolve_creds_dir()
|
|
199
199
|
|
|
200
|
-
targets = discover_signable_targets(project)
|
|
200
|
+
targets = discover_signable_targets(project, optional_env("CONFIGURATION") or "Release")
|
|
201
201
|
bundle_ids = sorted({t["bundle_id"] for t in targets})
|
|
202
202
|
print(f"Signable targets ({len(targets)}):")
|
|
203
203
|
for t in targets:
|