Skip to content

Commit 77747b9

Browse files
committed
Add more inputs
1 parent 46af455 commit 77747b9

File tree

3 files changed

+26
-147
lines changed

3 files changed

+26
-147
lines changed

README.md

Lines changed: 1 addition & 146 deletions
Original file line numberDiff line numberDiff line change
@@ -8,152 +8,7 @@ Note that this action needs to run on macOS. All other platforms will fail!
88

99
## Inputs
1010

11-
### `workspace`
12-
13-
The path to the xcworkspace to build. Mutually exclusive with `project` and `spm-package`. Either `workspace`, `project` or `spm-package` must be set. See also `xcodebuild`'s `-workspace`.
14-
15-
### `project`
16-
17-
The path to the xcodeproj to build. Mutually exclusive with `workspace` and `spm-package`. Either `workspace`, `project` or `spm-package` must be set. See also `xcodebuild`'s `-project`.
18-
19-
### `spm-package`
20-
21-
The path to the SPM package (folder containing `Package.swift`) to build. Mutually exclusive with `project` and `workspace`. Either `workspace`, `project` or `spm-package` must be set.
22-
23-
### `scheme`
24-
25-
The scheme to build. Required when using a workspace or SPM package. See also `xcodebuild`'s `-scheme`.
26-
27-
### `target`
28-
29-
The target to build. See also `xcodebuild`'s `-target`.
30-
31-
### `destination`
32-
33-
The destination specifier to build. See also `xcodebuild`'s `-destination`.
34-
35-
### `configuration`
36-
37-
The configuration to build. See also `xcodebuild`'s `-configuration`.
38-
39-
### `sdk`
40-
41-
The SDK to use for building. See also `xcodebuild`'s `-sdk`.
42-
43-
### `arch`
44-
45-
The architecture to use for building. See also `xcodebuild`'s `-arch`.
46-
47-
### `xcconfig`
48-
49-
The path to an xcconfig file with build settings overrides. See also `xcodebuild`'s `-xcconfig`.
50-
51-
### `jobs`
52-
53-
The number of jobs to use for building. See also `xcodebuild`'s `-jobs`.
54-
55-
### `parallelize-targets`
56-
57-
If `true`, the targets will be built in parallel. See also `xcodebuild`'s `-parallelizeTargets`.
58-
59-
### `quiet`
60-
61-
If `true`, `xcodebuild` won't print anything except warnings and errors. See also `xcodebuild`'s `-quiet`.
62-
63-
### `hide-shell-script-environment`
64-
65-
If `true`, `xcodebuild` won't print the environment for shell build scripts. See also `xcodebuild`'s `-hideShellScriptEnvironment`.
66-
67-
### `enable-code-coverage`
68-
69-
If `true`, code coverage is enabled while testing. See also `xcodebuild`'s `-enableCodeCoverage`.
70-
71-
### `parallel-testing-enabled`
72-
73-
If `true`, tests are executed in parallel. See also `xcodebuild`'s `-parallel-testing-enabled`.
74-
75-
### `maximum-concurrent-test-device-destinations`
76-
77-
The maximum number of device destinations to run in parallel. See also `xcodebuild`'s `-maximum-concurrent-test-device-destinations`.
78-
79-
### `maximum-concurrent-test-simulator-destinations`
80-
81-
The maximum number of simulator destinations to run in parallel. See also `xcodebuild`'s `-maximum-concurrent-test-simulator-destinations`.
82-
83-
### `enable-address-sanitizer`
84-
85-
Whether the address sanitizer should be enabled. See also `xcodebuild`'s `-enableAddressSanitizer`.
86-
87-
### `enable-thread-sanitizer`
88-
89-
Whether the thread sanitizer should be enabled. See also `xcodebuild`'s `-enableThreadSanitizer`.
90-
91-
### `enable-undefined-behavior-sanitizer`
92-
93-
Whether the undefined behavior sanitizer should be enabled. See also `xcodebuild`'s `-enableUndefinedBehaviorSanitizer`.
94-
95-
### `result-bundle-path`
96-
97-
The path that should be used for the result bundle. See also `xcodebuild`'s `-resultBundlePath`.
98-
99-
### `result-bundle-version`
100-
101-
The version that should be used for the result bundle. See also `xcodebuild`'s `-resultBundleVersion`.
102-
103-
### `cloned-source-packages-path`
104-
105-
The path that should be used for the cloning of remote packages. See also `xcodebuild`'s `-clonedSourcePackagesDirPath`.
106-
107-
### `derived-data-path`
108-
109-
The path that should be used for derived data. See also `xcdodebuild`'s `-derivedDataPath`.
110-
111-
### `xcroot`
112-
113-
The path to a .xcroot to use for building and/or testing. See also `xcodebuild`'s `-xcroot`.
114-
115-
### `xctestrun`
116-
117-
The path to a test run specification. See also `xcodebuild`'s `-xctestrun`.
118-
119-
### `test-plan`
120-
121-
The name of the test plan associated with the scheme to use for testing. See also `xcodebuild`'s `-testPlan`.
122-
123-
### `only-testing`
124-
125-
A list of tests to run. This can be multiline list of test identifiers. See also `xcodebuild`'s `-only-testing`.
126-
127-
### `skip-testing`
128-
129-
A list of tests to skip. This can be multiline list of test identifiers. See also `xcodebuild`'s `-only-testing`.
130-
131-
### `skip-unavailable-actions`
132-
133-
Whether unavailable actions should be skipped instead of failing the execution. See also `xcodebuild`'s `-skipUnavailableActions`.
134-
135-
### `allow-provisioning-updates`
136-
137-
Whether provisioning updates are allowed. See also `xcodebuild`'s `-allowProvisioningUpdates`.
138-
139-
### `allow-provisioning-device-registration`
140-
141-
Whether provisioning device registrations are allowed. See also `xcodebuild`'s `-allowProvisioningDeviceRegistration`.
142-
143-
### `build-settings`
144-
145-
Arbitrary, space separated build settings (e.g. `PLATFORM_NAME=iphonesimulator`).
146-
147-
### `action`
148-
149-
The action to perform (e.g. build, test, ...). Can also contain multiple actions.<br/>
150-
Default: `test`
151-
152-
### `output-formatter`
153-
154-
A CLI invocation to forward the output to (e.g. `xcpretty`, `xcbeautify`, ...). Note that it cannot contain any pipes.<br/>
155-
Default: `xcpretty --color`
156-
11+
See [action.yml](action.yml) for an overview of all inputs.
15712

15813
## Outputs
15914

action.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,9 +74,27 @@ inputs:
7474
cloned-source-packages-path:
7575
description: The path that should be used for the cloning of remote packages. See also `xcodebuild`'s `-clonedSourcePackagesDirPath`.
7676
required: false
77+
package-cache-path:
78+
description: The path of caches used for package support. See also `xcodebuild`'s `-packageCachePath`.
79+
required: false
7780
derived-data-path:
7881
description: The path that should be used for derived data. See also `xcodebuild`'s `-derivedDataPath`.
7982
required: false
83+
disable-package-repository-cache:
84+
description: Whether the package repository cache should be disabled. See also `xcodebuild`'s `-disablePackageRepositoryCache`.
85+
required: false
86+
disable-automatic-package-resolution:
87+
description: Whether automatic package resolution should be disabled. See also `xcodebuild`'s `-disableAutomaticPackageResolution`.
88+
required: false
89+
skip-package-updates:
90+
description: Whether package updates should be skipped. See also `xcodebuild`'s `-skipPackageUpdates`.
91+
required: false
92+
skip-package-plugin-validation:
93+
description: Whether package plugin validation should be skipped. See also `xcodebuild`'s `-skipPackagePluginValidation`.
94+
required: false
95+
skip-macro-validation:
96+
description: Whether macro validation should be skipped. See also `xcodebuild`'s `-skipMacroValidation`.
97+
required: false
8098
xcroot:
8199
description: The path to a .xcroot to use for building and/or testing. See also `xcodebuild`'s `-xcroot`.
82100
required: false

src/main.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ function argumentStrings(argument: ICommandArgument,
6868
useResolvedValue: boolean = true,
6969
escapeValue: boolean = false): string[] {
7070
let plain = [argument.name];
71-
if (argument.value)
71+
if (argument.value)
7272
plain.push(argumentValueString(argument.value, useResolvedValue, escapeValue));
7373
return plain;
7474
}
@@ -224,7 +224,13 @@ async function main() {
224224
addPathArg('result-bundle-path', 'resultBundlePath');
225225
addInputArg('result-bundle-version', 'resultBundleVersion');
226226
addPathArg('cloned-source-packages-path', 'clonedSourcePackagesDirPath');
227+
addPathArg('package-cache-path', 'packageCachePath');
227228
addPathArg('derived-data-path', 'derivedDataPath');
229+
addFlagArg('disable-package-repository-cache', 'disablePackageRepositoryCache');
230+
addFlagArg('disable-automatic-package-resolution', 'disableAutomaticPackageResolution');
231+
addFlagArg('skip-package-updates', 'skipPackageUpdates');
232+
addFlagArg('skip-package-plugin-validation', 'skipPackagePluginValidation');
233+
addFlagArg('skip-macro-validation', 'skipMacroValidation');
228234
addPathArg('xcroot');
229235
addPathArg('xctestrun');
230236
addInputArg('test-plan', 'testPlan');

0 commit comments

Comments
 (0)