jsii-release 0.2.988 → 0.2.990
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/CONTRIBUTING.md +33 -0
- package/README.md +34 -12
- package/bin/publib-maven +2 -361
- package/lib/bin/publib-ca.js +20 -12
- package/lib/bin/publib-golang.js +19 -10
- package/lib/bin/publib-maven.d.ts +10 -0
- package/lib/bin/publib-maven.js +608 -0
- package/lib/codeartifact/codeartifact-cli.js +18 -8
- package/lib/codeartifact/codeartifact-repo.js +9 -13
- package/lib/codeartifact/display.js +2 -3
- package/lib/codeartifact/files.js +28 -20
- package/lib/codeartifact/shell.d.ts +0 -2
- package/lib/codeartifact/shell.js +30 -25
- package/lib/codeartifact/staging/maven.js +23 -16
- package/lib/codeartifact/staging/npm.js +21 -12
- package/lib/codeartifact/staging/nuget.js +3 -4
- package/lib/codeartifact/staging/parallel-shell.d.ts +0 -1
- package/lib/codeartifact/staging/parallel-shell.js +3 -4
- package/lib/codeartifact/staging/pip.js +3 -4
- package/lib/codeartifact/usage-dir.js +18 -8
- package/lib/help/corking.d.ts +2 -6
- package/lib/help/corking.js +18 -8
- package/lib/help/git.js +34 -27
- package/lib/help/os.js +19 -10
- package/lib/help/shell.js +23 -15
- package/lib/help/sleep.js +2 -3
- package/lib/targets/go.js +24 -16
- package/package.json +11 -9
- package/package.json.bak +11 -9
package/CONTRIBUTING.md
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# How to work on this repository
|
|
2
|
+
|
|
3
|
+
## Testing Maven publishing
|
|
4
|
+
|
|
5
|
+
- Create a Sonatype account at <https://central.sonatype.com/account>. You can use GitHub to sign in.
|
|
6
|
+
- Generate a user token, note the username and password.
|
|
7
|
+
- Generate an empty project and give it a jsii config. Example:
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
{
|
|
11
|
+
"jsii": {
|
|
12
|
+
"versionFormat": "full",
|
|
13
|
+
"targets": {
|
|
14
|
+
"java": {
|
|
15
|
+
"package": "test.test",
|
|
16
|
+
"maven": {
|
|
17
|
+
"groupId": "test.test",
|
|
18
|
+
"artifactId": "test"
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
"outdir": "dist"
|
|
23
|
+
},
|
|
24
|
+
}
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Follow the instructions in the README for creating and exporting a GPG key.
|
|
28
|
+
|
|
29
|
+
Then run the following command:
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
env MAVEN_GPG_PRIVATE_KEY_FILE=$PWD/mykey.priv MAVEN_GPG_PRIVATE_KEY_PASSPHRASE=mypassphrase MAVEN_STAGING_PROFILE_ID=com.sonatype.software MAVEN_SERVER_ID=central-ossrh MAVEN_USERNAME=**** MAVEN_PASSWORD=**** /path/to/publib/bin/publib-maven
|
|
33
|
+
```
|
package/README.md
CHANGED
|
@@ -81,7 +81,18 @@ npx publib-npm [DIR]
|
|
|
81
81
|
|
|
82
82
|
Publishes all Maven modules in the `DIR` to [Maven Central](https://search.maven.org/).
|
|
83
83
|
|
|
84
|
-
|
|
84
|
+
> [!IMPORTANT]
|
|
85
|
+
> Starting July 2025 you must switch over to the new Maven Central Publisher. Follow these steps:
|
|
86
|
+
>
|
|
87
|
+
> * Configure `MAVEN_SERVER_ID=central-ossrh`.
|
|
88
|
+
> * Unset any `MAVEN_ENDPOINT`.
|
|
89
|
+
> * Log in to <https://central.sonatype.com/>
|
|
90
|
+
> * Generate a new username and password on the new publisher using the **Generate User Token** feature.
|
|
91
|
+
> * Configure `MAVEN_STAGING_PROFILE_ID` with your package namespace (register it first if necessary)
|
|
92
|
+
|
|
93
|
+
If you are still on Nexus and you signed up at SonaType after February 2021, you
|
|
94
|
+
need to use this URL: `https://s01.oss.sonatype.org`
|
|
95
|
+
([announcement](https://central.sonatype.org/news/20210223_new-users-on-s01/)).
|
|
85
96
|
|
|
86
97
|
**Usage:**
|
|
87
98
|
|
|
@@ -93,17 +104,28 @@ npx publib-maven [DIR]
|
|
|
93
104
|
|
|
94
105
|
**Options (environment variables):**
|
|
95
106
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
+
The server type is selected using the `MAVEN_SERVER_ID` variable.
|
|
108
|
+
|
|
109
|
+
- `MAVEN_SERVER_ID=ossrh`; this is currently the default but will stop working in July 2025. Publish to the old OSSRH Nexus server.
|
|
110
|
+
- `MAVEN_SERVER_ID=central-ossrh`; publish to the new Central Publishing platform using a service endpoint more-or-less compatible with the old OSSRH Nexus server. This is required to publish to Maven Central starting July 2025.
|
|
111
|
+
- `MAVEN_SERVER_ID=<anything else>`; publish to a custom Nexus server.
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
| Server | Option | Required | Description |
|
|
115
|
+
|----------------------| --------------------------------------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
116
|
+
| (all) | `MAVEN_SERVER_ID` | Yes going forward | Either `ossrh` (default but deprecated), `central-ossrh`, or any other string for a custom Nexus server. |
|
|
117
|
+
| (all) | `MAVEN_USERNAME` and `MAVEN_PASSWORD` | Yes | Username and password for maven repository. For Maven Central, you will need to [Create JIRA account](https://issues.sonatype.org/secure/Signup!default.jspa) and then request a [new project](https://issues.sonatype.org/secure/CreateIssue.jspa?issuetype=21&pid=10134). Read the [OSSRH guide](https://central.sonatype.org/pages/ossrh-guide.html) for more details. |
|
|
118
|
+
| (all) | `MAVEN_DRYRUN` | No | Set to "true" for a dry run |
|
|
119
|
+
| (all) | `MAVEN_VERBOSE` | No | Make Maven print debug output if set to `true` |
|
|
120
|
+
| `central-ossrh` | `MAVEN_GPG_PRIVATE_KEY[_FILE]` and `MAVEN_GPG_PRIVATE_KEY_PASSPHRASE` | Yes | GPG private key or file that includes it. This is used to sign your Maven packages. See instructions below |
|
|
121
|
+
| `central-ossrh` | `MAVEN_STAGING_PROFILE_ID` | Yes | Maven Central (sonatype) staging profile ID (e.g. 68a05363083174). Staging profile ID can be found **in the URL** of the "Releases" staging profile under "Staging Profiles" in <https://oss.sonatype.org> or <https://s01.oss.sonatype.org> if you are logged in (e.g. `https://oss.sonatype.org/#stagingProfiles;68a05363083174`). |
|
|
122
|
+
| `central-ossrh` | `MAVEN_ENDPOINT` | No | URL of Nexus repository. Defaults to `https://ossrh-staging-api.central.sonatype.com/`. |
|
|
123
|
+
| `<custom>` | `MAVEN_REPOSITORY_URL` | No | Deployment repository when not deploying to Maven Central |
|
|
124
|
+
| `ossrh` (deprecated) | `MAVEN_GPG_PRIVATE_KEY[_FILE]` and `MAVEN_GPG_PRIVATE_KEY_PASSPHRASE` | Yes | GPG private key or file that includes it. This is used to sign your Maven packages. See instructions below |
|
|
125
|
+
| `ossrh` (deprecated) | `MAVEN_STAGING_PROFILE_ID` | Yes | Central Publisher (sonatype) staging profile ID, corresponding to namespace (e.g. `com.sonatype.software`). |
|
|
126
|
+
| `ossrh` (deprecated) | `MAVEN_ENDPOINT` | No | URL of Nexus repository. Defaults to `https://central.sonatype.com`. |
|
|
127
|
+
|
|
128
|
+
**How to create a GPG key**
|
|
107
129
|
|
|
108
130
|
Install [GnuPG](https://gnupg.org/).
|
|
109
131
|
|
package/bin/publib-maven
CHANGED
|
@@ -1,361 +1,2 @@
|
|
|
1
|
-
#!/bin/
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
###
|
|
5
|
-
#
|
|
6
|
-
# Publishes all maven modules in the specified directory to maven.
|
|
7
|
-
#
|
|
8
|
-
# Usage: ./publib-maven [DIR]
|
|
9
|
-
#
|
|
10
|
-
# DIR is the root directory of a local maven repository (default `dist/java`).
|
|
11
|
-
#
|
|
12
|
-
# MAVEN_STAGING_PROFILE_ID - Maven Central (sonatype) staging profile ID (e.g. 68a05363083174)
|
|
13
|
-
# MAVEN_USERNAME - User name for Sonatype
|
|
14
|
-
# MAVEN_PASSWORD - Password for Sonatype
|
|
15
|
-
# MAVEN_GPG_PRIVATE_KEY - GPG private key where newlines are encoded as "\n"
|
|
16
|
-
# MAVEN_GPG_PRIVATE_KEY_FILE - GPG private key file (mutually exclusive with MAVEN_GPG_PRIVATE_KEY)
|
|
17
|
-
# MAVEN_GPG_PRIVATE_KEY_PASSPHRASE - The passphrase of the provided key.
|
|
18
|
-
# MAVEN_DRYRUN - Set to "true" for a dry run
|
|
19
|
-
# MAVEN_SERVER_ID - Used in maven settings for credential lookup
|
|
20
|
-
# MAVEN_REPOSITORY_URL - Deployment repository when not deploying to maven central
|
|
21
|
-
#
|
|
22
|
-
###
|
|
23
|
-
|
|
24
|
-
###
|
|
25
|
-
#
|
|
26
|
-
# HOW TO CREATE A GPG KEY?
|
|
27
|
-
#
|
|
28
|
-
# gpg --full-generate-key (use RSA, 4096, passphrase)
|
|
29
|
-
#
|
|
30
|
-
# Export and publish the public key:
|
|
31
|
-
# 1. gpg -a --export > public.pem
|
|
32
|
-
# 2. Go to https://keyserver.ubuntu.com/ and submit the public key
|
|
33
|
-
#
|
|
34
|
-
# Export and use the private key:
|
|
35
|
-
# 1. gpg -a --export-secret-keys <fingerprint> > private.pem
|
|
36
|
-
# 2. Set MAVEN_GPG_PRIVATE_KEY_FILE =t point to `private.pem`
|
|
37
|
-
# or
|
|
38
|
-
# 3. You can also export the private key to a single line where newlines are encoded
|
|
39
|
-
# as "\n" and then assign it to MAVEN_GPG_PRIVATE_KEY.
|
|
40
|
-
# MAVEN_GPG_PRIVATE_KEY="$(echo $(cat -e private.pem) | sed 's/\$ /\\n/g' | sed 's/\$$//')"
|
|
41
|
-
#
|
|
42
|
-
###
|
|
43
|
-
|
|
44
|
-
readonly CENTRAL_SERVER="ossrh"
|
|
45
|
-
|
|
46
|
-
# -------------------------------------------------------------------------------------------------
|
|
47
|
-
# we need this monstrosity because this script is installed as a symlink to node_modules/.bin
|
|
48
|
-
# and we need a way to find it's real location so we can reference stuff that's not in .bin
|
|
49
|
-
# https://stackoverflow.com/a/246128
|
|
50
|
-
SOURCE="${BASH_SOURCE[0]}"
|
|
51
|
-
while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
|
|
52
|
-
DIR="$( cd -P "$( dirname "$SOURCE" )" >/dev/null 2>&1 && pwd )"
|
|
53
|
-
SOURCE="$(readlink "$SOURCE")"
|
|
54
|
-
[[ $SOURCE != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
|
|
55
|
-
done
|
|
56
|
-
scriptdir="$( cd -P "$( dirname "$SOURCE" )" >/dev/null 2>&1 && pwd )"
|
|
57
|
-
# -------------------------------------------------------------------------------------------------
|
|
58
|
-
|
|
59
|
-
error() { echo "❌ $@"; exit 1; }
|
|
60
|
-
|
|
61
|
-
validate_central_parameters() {
|
|
62
|
-
[[ -z "${MAVEN_STAGING_PROFILE_ID:-}" ]] && error "MAVEN_STAGING_PROFILE_ID is required"
|
|
63
|
-
return 0
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
validate_non_central_parameters() {
|
|
67
|
-
[[ -z "${MAVEN_SERVER_ID:-}" ]] && error "MAVEN_SERVER_ID is required"
|
|
68
|
-
[[ -z "${MAVEN_REPOSITORY_URL:-}" ]] && error "MAVEN_REPOSITORY_URL is required"
|
|
69
|
-
return 0
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
validate_signing_parameters() {
|
|
73
|
-
[[ -z "${MAVEN_GPG_PRIVATE_KEY_PASSPHRASE:-}" ]] && error "MAVEN_GPG_PRIVATE_KEY_PASSPHRASE is required"
|
|
74
|
-
[[ -z "${MAVEN_GPG_PRIVATE_KEY_FILE:-}" ]] && [[ -z "${MAVEN_GPG_PRIVATE_KEY:-}" ]] && error "MAVEN_GPG_PRIVATE_KEY_FILE or MAVEN_GPG_PRIVATE_KEY is required"
|
|
75
|
-
[[ -n "${MAVEN_GPG_PRIVATE_KEY:-}" ]] && [[ -n "${MAVEN_GPG_PRIVATE_KEY_FILE:-}" ]] && error "Cannot specify both MAVEN_GPG_PRIVATE_KEY and MAVEN_GPG_PRIVATE_KEY_FILE"
|
|
76
|
-
return 0
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
validate_parameters() {
|
|
80
|
-
[[ -z "${MAVEN_USERNAME:-}" ]] && error "MAVEN_USERNAME is required"
|
|
81
|
-
[[ -z "${MAVEN_PASSWORD:-}" ]] && error "MAVEN_PASSWORD is required"
|
|
82
|
-
|
|
83
|
-
if ${is_central}; then
|
|
84
|
-
validate_central_parameters
|
|
85
|
-
else
|
|
86
|
-
validate_non_central_parameters
|
|
87
|
-
fi
|
|
88
|
-
|
|
89
|
-
if (${is_signed} && ! ${is_central}); then
|
|
90
|
-
error "Package signing is currently only supported for Maven Central"
|
|
91
|
-
fi
|
|
92
|
-
|
|
93
|
-
if (${is_signed} || ${is_central}); then
|
|
94
|
-
validate_signing_parameters
|
|
95
|
-
fi
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
import_gpg_key() {
|
|
99
|
-
#---------------------------------------------------------------------------------------------------------------------------------------
|
|
100
|
-
# Import private GPG key
|
|
101
|
-
#---------------------------------------------------------------------------------------------------------------------------------------
|
|
102
|
-
|
|
103
|
-
echo "Importing GPG key..." >&2
|
|
104
|
-
|
|
105
|
-
# GnuPG will occasionally bail out with "gpg: <whatever> failed: Inappropriate ioctl for device", the following attempts to fix
|
|
106
|
-
export GNUPGHOME=$(mktemp -d)
|
|
107
|
-
export GPG_TTY=$(tty)
|
|
108
|
-
|
|
109
|
-
if [ -n "${MAVEN_GPG_PRIVATE_KEY:-}" ]; then
|
|
110
|
-
MAVEN_GPG_PRIVATE_KEY_FILE="${GNUPGHOME}/private.pem"
|
|
111
|
-
echo -e "${MAVEN_GPG_PRIVATE_KEY}" > ${MAVEN_GPG_PRIVATE_KEY_FILE}
|
|
112
|
-
fi
|
|
113
|
-
|
|
114
|
-
gpg --allow-secret-key-import --batch --yes --no-tty --import "${MAVEN_GPG_PRIVATE_KEY_FILE}" || {
|
|
115
|
-
error "GPG key import failed"
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
gpg_key_id=$(gpg --list-keys --with-colons | grep pub | cut -d: -f5)
|
|
119
|
-
echo "gpg_key_id=${gpg_key_id}"
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
create_maven_settings() {
|
|
123
|
-
# Create a settings.xml file with the user+password for maven
|
|
124
|
-
mvn_settings="${workdir}/mvn-settings.xml"
|
|
125
|
-
if ${is_signed}; then
|
|
126
|
-
cat > ${mvn_settings} <<-EOF
|
|
127
|
-
<?xml version="1.0" encoding="UTF-8" ?>
|
|
128
|
-
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
|
|
129
|
-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
130
|
-
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
|
|
131
|
-
http://maven.apache.org/xsd/settings-1.0.0.xsd">
|
|
132
|
-
<servers>
|
|
133
|
-
<server>
|
|
134
|
-
<id>${server_id}</id>
|
|
135
|
-
<username>\${env.MAVEN_USERNAME}</username>
|
|
136
|
-
<password>\${env.MAVEN_PASSWORD}</password>
|
|
137
|
-
</server>
|
|
138
|
-
<server>
|
|
139
|
-
<id>gpg.passphrase</id>
|
|
140
|
-
<passphrase>\${env.MAVEN_GPG_PRIVATE_KEY_PASSPHRASE}</passphrase>
|
|
141
|
-
</server>
|
|
142
|
-
</servers>
|
|
143
|
-
</settings>
|
|
144
|
-
EOF
|
|
145
|
-
else
|
|
146
|
-
cat > ${mvn_settings} <<-EOF
|
|
147
|
-
<?xml version="1.0" encoding="UTF-8" ?>
|
|
148
|
-
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
|
|
149
|
-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
150
|
-
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
|
|
151
|
-
http://maven.apache.org/xsd/settings-1.0.0.xsd">
|
|
152
|
-
<servers>
|
|
153
|
-
<server>
|
|
154
|
-
<id>${server_id}</id>
|
|
155
|
-
<username>\${env.MAVEN_USERNAME}</username>
|
|
156
|
-
<password>\${env.MAVEN_PASSWORD}</password>
|
|
157
|
-
</server>
|
|
158
|
-
</servers>
|
|
159
|
-
</settings>
|
|
160
|
-
EOF
|
|
161
|
-
fi
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
sign_artifacts() {
|
|
165
|
-
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
|
|
166
|
-
echo " Preparing repository"
|
|
167
|
-
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
|
|
168
|
-
|
|
169
|
-
# on a mac, --pinentry-mode to "loopback" are required and I couldn't find a
|
|
170
|
-
# way to do so via -Dgpg.gpgArguments or the settings file, so here we are.
|
|
171
|
-
local gpg_exec="gpg"
|
|
172
|
-
if [[ "$(uname)" == "Darwin" ]]; then
|
|
173
|
-
gpg_exec="/tmp/publib-gpg.sh"
|
|
174
|
-
echo "#!/bin/bash" > $gpg_exec
|
|
175
|
-
echo "exec gpg --pinentry-mode loopback \"\$@\"" >> $gpg_exec
|
|
176
|
-
chmod +x $gpg_exec
|
|
177
|
-
fi
|
|
178
|
-
|
|
179
|
-
# Sign and stage our artifacts into a local directory
|
|
180
|
-
for pom in ${poms}; do
|
|
181
|
-
$mvn --settings=${mvn_settings} gpg:sign-and-deploy-file \
|
|
182
|
-
-X \
|
|
183
|
-
-Durl=file://${staging} \
|
|
184
|
-
-DrepositoryId=${server_id} \
|
|
185
|
-
-Dgpg.homedir=${GNUPGHOME} \
|
|
186
|
-
-Dgpg.keyname=0x${gpg_key_id} \
|
|
187
|
-
-Dgpg.executable=${gpg_exec} \
|
|
188
|
-
-DpomFile=${pom} \
|
|
189
|
-
-Dfile=${pom/.pom/.jar} \
|
|
190
|
-
-Dsources=${pom/.pom/-sources.jar} \
|
|
191
|
-
-Djavadoc=${pom/.pom/-javadoc.jar}
|
|
192
|
-
done
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
deploy_central() {
|
|
196
|
-
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
|
|
197
|
-
echo " Deploying and closing repository..."
|
|
198
|
-
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
|
|
199
|
-
|
|
200
|
-
staging_output="${workdir}/deploy-output.txt"
|
|
201
|
-
$mvn --settings=${mvn_settings} \
|
|
202
|
-
org.sonatype.plugins:nexus-staging-maven-plugin:1.6.13:deploy-staged-repository \
|
|
203
|
-
-DrepositoryDirectory=${staging} \
|
|
204
|
-
-DnexusUrl=${MAVEN_ENDPOINT:-https://oss.sonatype.org} \
|
|
205
|
-
-DserverId=${server_id} \
|
|
206
|
-
-DautoReleaseAfterClose=true \
|
|
207
|
-
-DstagingProgressTimeoutMinutes=30 \
|
|
208
|
-
-DstagingProfileId=${MAVEN_STAGING_PROFILE_ID} | tee ${staging_output}
|
|
209
|
-
|
|
210
|
-
# we need to consule PIPESTATUS sinec "tee" is the last command
|
|
211
|
-
if [ ${PIPESTATUS[0]} -ne 0 ]; then
|
|
212
|
-
error "Repository deployment failed"
|
|
213
|
-
fi
|
|
214
|
-
|
|
215
|
-
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
|
|
216
|
-
echo " Releasing repository"
|
|
217
|
-
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
|
|
218
|
-
|
|
219
|
-
# Extract the ID of the closed repository from the log output of "deploy-staged-repository"
|
|
220
|
-
# This is because "deploy-staged-repository" doesn't seem to support autoReleaseAfterClose
|
|
221
|
-
# See https://issues.sonatype.org/browse/OSSRH-42487
|
|
222
|
-
if $dry_run; then
|
|
223
|
-
echo 'Closing staging repository with ID "dummyrepo"' > ${staging_output}
|
|
224
|
-
fi
|
|
225
|
-
|
|
226
|
-
repository_id="$(cat ${staging_output} | grep "Closing staging repository with ID" | cut -d'"' -f2)"
|
|
227
|
-
if [ -z "${repository_id}" ]; then
|
|
228
|
-
echo "❌ Unable to extract repository ID from deploy-staged-repository output."
|
|
229
|
-
echo "This means it failed to close or there was an unexpected problem."
|
|
230
|
-
echo "At any rate, we can't release it. Sorry"
|
|
231
|
-
exit 1
|
|
232
|
-
fi
|
|
233
|
-
|
|
234
|
-
echo "Repository ID: ${repository_id}"
|
|
235
|
-
|
|
236
|
-
# Create a dummy pom.xml because the "release" goal needs one, but it doesn't care about it at all
|
|
237
|
-
release_pom="${workdir}/release-pom.xml"
|
|
238
|
-
cat > ${release_pom} <<HERE
|
|
239
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
240
|
-
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
241
|
-
<modelVersion>4.0.0</modelVersion>
|
|
242
|
-
<groupId>dummy</groupId>
|
|
243
|
-
<artifactId>dummy</artifactId>
|
|
244
|
-
<version>0.0.0</version>
|
|
245
|
-
</project>
|
|
246
|
-
HERE
|
|
247
|
-
|
|
248
|
-
# Release!
|
|
249
|
-
release_output="${workdir}/release-output.txt"
|
|
250
|
-
$mvn --settings ${mvn_settings} -f ${release_pom} \
|
|
251
|
-
org.sonatype.plugins:nexus-staging-maven-plugin:1.6.13:release \
|
|
252
|
-
-DserverId=${server_id} \
|
|
253
|
-
-DnexusUrl=${MAVEN_ENDPOINT:-https://oss.sonatype.org} \
|
|
254
|
-
-DstagingProfileId=${MAVEN_STAGING_PROFILE_ID} \
|
|
255
|
-
-DstagingProgressTimeoutMinutes=30 \
|
|
256
|
-
-DstagingRepositoryId=${repository_id} | tee ${release_output}
|
|
257
|
-
|
|
258
|
-
# If release failed, check if this was caused because we are trying to publish
|
|
259
|
-
# the same version again, which is not an error. The magic string "does not
|
|
260
|
-
# allow updating artifact" for a ".pom" file indicates that we are trying to
|
|
261
|
-
# override an existing version. Otherwise, fail!
|
|
262
|
-
if [ ${PIPESTATUS[0]} -ne 0 ]; then
|
|
263
|
-
if cat ${release_output} | grep "does not allow updating artifact" | grep -q ".pom"; then
|
|
264
|
-
echo "⚠️ Artifact already published. Skipping"
|
|
265
|
-
else
|
|
266
|
-
error "Release failed"
|
|
267
|
-
fi
|
|
268
|
-
fi
|
|
269
|
-
}
|
|
270
|
-
|
|
271
|
-
deploy_non_central() {
|
|
272
|
-
release_output="${workdir}/release-output.txt"
|
|
273
|
-
for pom in ${poms}; do
|
|
274
|
-
$mvn --settings=${mvn_settings} deploy:deploy-file \
|
|
275
|
-
-Durl=${MAVEN_REPOSITORY_URL} \
|
|
276
|
-
-DrepositoryId=${server_id} \
|
|
277
|
-
-Dfile=${pom/.pom/.jar} \
|
|
278
|
-
-DpomFile=${pom} \
|
|
279
|
-
-Dsources=${pom/.pom/-sources.jar} \
|
|
280
|
-
-Djavadoc=${pom/.pom/-javadoc.jar} | tee ${release_output}
|
|
281
|
-
|
|
282
|
-
# If release failed, check if this was caused because we are trying to publish
|
|
283
|
-
# the same version again, which is not an error. The magic string "409 Conflict"
|
|
284
|
-
# indicates that we are trying to
|
|
285
|
-
# override an existing version. Otherwise, fail!
|
|
286
|
-
if [ ${PIPESTATUS[0]} -ne 0 ]; then
|
|
287
|
-
if cat ${release_output} | grep -q "409 Conflict"; then
|
|
288
|
-
echo "⚠️ Artifact already published. Skipping"
|
|
289
|
-
else
|
|
290
|
-
error "Release failed"
|
|
291
|
-
fi
|
|
292
|
-
fi
|
|
293
|
-
done
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
main() {
|
|
297
|
-
cd "${1:-"dist/java"}"
|
|
298
|
-
|
|
299
|
-
server_id="${MAVEN_SERVER_ID:-"${CENTRAL_SERVER}"}"
|
|
300
|
-
if [[ "${server_id}" == "${CENTRAL_SERVER}" ]]; then
|
|
301
|
-
is_central=true
|
|
302
|
-
else
|
|
303
|
-
is_central=false
|
|
304
|
-
fi
|
|
305
|
-
|
|
306
|
-
if [[ -n "${MAVEN_GPG_PRIVATE_KEY_FILE:-}" ]] || [[ -n "${MAVEN_GPG_PRIVATE_KEY:-}" ]]; then
|
|
307
|
-
is_signed=true
|
|
308
|
-
else
|
|
309
|
-
is_signed=false
|
|
310
|
-
fi
|
|
311
|
-
|
|
312
|
-
validate_parameters
|
|
313
|
-
|
|
314
|
-
if [[ -n "${MAVEN_DRYRUN:-}" ]]; then
|
|
315
|
-
echo "==========================================="
|
|
316
|
-
echo " 🏜️ DRY-RUN MODE 🏜️"
|
|
317
|
-
echo "==========================================="
|
|
318
|
-
mvn="echo mvn"
|
|
319
|
-
dry_run=true
|
|
320
|
-
else
|
|
321
|
-
mvn=mvn
|
|
322
|
-
dry_run=false
|
|
323
|
-
fi
|
|
324
|
-
|
|
325
|
-
if ${is_signed}; then
|
|
326
|
-
import_gpg_key
|
|
327
|
-
fi
|
|
328
|
-
|
|
329
|
-
poms="$(find . -name '*.pom')"
|
|
330
|
-
if [ -z "${poms}" ]; then
|
|
331
|
-
error "No JARS to publish: no .pom files found under $PWD"
|
|
332
|
-
fi
|
|
333
|
-
|
|
334
|
-
if ${is_central}; then
|
|
335
|
-
echo "📦 Publishing to Maven Central"
|
|
336
|
-
else
|
|
337
|
-
echo "📦 Publishing to ${server_id}"
|
|
338
|
-
fi
|
|
339
|
-
|
|
340
|
-
staging=$(mktemp -d)
|
|
341
|
-
workdir=$(mktemp -d)
|
|
342
|
-
echo ${workdir}
|
|
343
|
-
|
|
344
|
-
create_maven_settings
|
|
345
|
-
|
|
346
|
-
if ${is_signed}; then
|
|
347
|
-
# This currently only works with Maven Central
|
|
348
|
-
sign_artifacts
|
|
349
|
-
fi
|
|
350
|
-
|
|
351
|
-
if ${is_central}; then
|
|
352
|
-
deploy_central
|
|
353
|
-
else
|
|
354
|
-
deploy_non_central
|
|
355
|
-
fi
|
|
356
|
-
|
|
357
|
-
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
|
|
358
|
-
echo "✅ All Done!"
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
main "$@"; exit
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
require('../lib/bin/publib-maven.js');
|
package/lib/bin/publib-ca.js
CHANGED
|
@@ -15,15 +15,25 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.main =
|
|
36
|
+
exports.main = main;
|
|
27
37
|
/**
|
|
28
38
|
* Publib CodeArtifact CLI
|
|
29
39
|
*/
|
|
@@ -102,14 +112,13 @@ async function main() {
|
|
|
102
112
|
requiresArg: true,
|
|
103
113
|
demandOption: false,
|
|
104
114
|
}), async (args) => {
|
|
105
|
-
var _a;
|
|
106
115
|
const cli = new codeartifact_cli_1.CodeArtifactCli({
|
|
107
116
|
assumeRoleArn: args['assume-role-arn'],
|
|
108
117
|
});
|
|
109
118
|
const repo = await cli.login(args.repo);
|
|
110
119
|
const defaultShell = process.platform === 'win32' ? 'cmd' : 'bash';
|
|
111
120
|
(0, display_1.header)(`Shell activated for ${repo.repositoryName}`);
|
|
112
|
-
await cli.runInteractively(
|
|
121
|
+
await cli.runInteractively(process.env.SHELL ?? defaultShell);
|
|
113
122
|
})
|
|
114
123
|
.command('publish <DIRECTORY>', 'Publish a given directory', cmd => cmd
|
|
115
124
|
.positional('DIRECTORY', {
|
|
@@ -145,10 +154,9 @@ async function main() {
|
|
|
145
154
|
.showHelpOnFail(false)
|
|
146
155
|
.parse();
|
|
147
156
|
}
|
|
148
|
-
exports.main = main;
|
|
149
157
|
main().catch(e => {
|
|
150
158
|
// eslint-disable-next-line no-console
|
|
151
159
|
console.error(e);
|
|
152
160
|
process.exitCode = 1;
|
|
153
161
|
});
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGliLWNhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jpbi9wdWJsaWItY2EudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7R0FFRztBQUNILCtCQUErQjtBQUMvQiw2Q0FBK0I7QUFDL0IsdUVBQW1FO0FBQ25FLHFEQUFpRDtBQUUxQyxLQUFLLFVBQVUsSUFBSTtJQUN4QixNQUFNLEtBQUs7U0FDUixLQUFLLENBQUMsY0FBYyxDQUFDO1NBQ3JCLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRTtRQUN6QixXQUFXLEVBQUUsZ0RBQWdEO1FBQzdELEtBQUssRUFBRSxHQUFHO1FBQ1YsV0FBVyxFQUFFLElBQUk7UUFDakIsSUFBSSxFQUFFLFFBQVE7S0FDZixDQUFDO1NBQ0QsT0FBTyxDQUFDLFFBQVEsRUFBRSwyREFBMkQsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUc7U0FDdkYsTUFBTSxDQUFDLElBQUksRUFBRTtRQUNaLFdBQVcsRUFBRSxrQ0FBa0M7UUFDL0MsSUFBSSxFQUFFLFNBQVM7UUFDZixPQUFPLEVBQUUsSUFBSTtLQUNkLENBQUM7U0FDRCxNQUFNLENBQUMsT0FBTyxFQUFFO1FBQ2YsV0FBVyxFQUFFLHNEQUFzRDtRQUNuRSxJQUFJLEVBQUUsU0FBUztRQUNmLE9BQU8sRUFBRSxJQUFJO0tBQ2QsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRTtRQUVuQixNQUFNLEdBQUcsR0FBRyxJQUFJLGtDQUFlLENBQUM7WUFDOUIsYUFBYSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztTQUN2QyxDQUFDLENBQUM7UUFFSCxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDWCxNQUFNLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQztTQUNoQjtRQUVELE1BQU0sUUFBUSxHQUFHLE1BQU0sR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3BDLE9BQU8s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QUFDLENBQUMsQ0FBQyxFQUFFO0lBQ2Ysc0NBQXNDO0lBQ3RDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakIsT0FBTyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7QUFDdkIsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFB1YmxpYiBDb2RlQXJ0aWZhY3QgQ0xJXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cbmltcG9ydCAqIGFzIHlhcmdzIGZyb20gJ3lhcmdzJztcbmltcG9ydCB7IENvZGVBcnRpZmFjdENsaSB9IGZyb20gJy4uL2NvZGVhcnRpZmFjdC9jb2RlYXJ0aWZhY3QtY2xpJztcbmltcG9ydCB7IGhlYWRlciB9IGZyb20gJy4uL2NvZGVhcnRpZmFjdC9kaXNwbGF5JztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG1haW4oKSB7XG4gIGF3YWl0IHlhcmdzXG4gICAgLnVzYWdlKCckMCA8Y29tbWFuZD4nKVxuICAgIC5vcHRpb24oJ2Fzc3VtZS1yb2xlLWFybicsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiAnUm9sZSB0byBhc3N1bWUgYmVmb3JlIGRvaW5nIENvZGVBcnRpZmFjdCBjYWxscycsXG4gICAgICBhbGlhczogJ2EnLFxuICAgICAgcmVxdWlyZXNBcmc6IHRydWUsXG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICB9KVxuICAgIC5jb21tYW5kKCdjcmVhdGUnLCAnQ3JlYXRlIGEgdGVtcG9yYXJ5IENvZGVBcnRpZmFjdCByZXBvc2l0b3J5IHdpdGggdXBzdHJlYW1zJywgY21kID0+IGNtZFxuICAgICAgLm9wdGlvbignZ2MnLCB7XG4gICAgICAgIGRlc2NyaXB0aW9uOiAnR2FyYmFnZSBjb2xsZWN0IG9sZCByZXBvc2l0b3JpZXMnLFxuICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgICB9KVxuICAgICAgLm9wdGlvbignbG9naW4nLCB7XG4gICAgICAgIGRlc2NyaXB0aW9uOiAnQXV0b21hdGljYWxseSBsb2cgaW4gdG8gdGhlIG5ld2x5IGNyZWF0ZWQgcmVwb3NpdG9yeScsXG4gICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgZGVmYXVsdDogdHJ1ZSxcbiAgICAgIH0pLCBhc3luYyAoYXJncykgPT4ge1xuXG4gICAgICBjb25zdCBjbGkgPSBuZXcgQ29kZUFydGlmYWN0Q2xpKHtcbiAgICAgICAgYXNzdW1lUm9sZUFybjogYXJnc1snYXNzdW1lLXJvbGUtYXJuJ10sXG4gICAgICB9KTtcblxuICAgICAgaWYgKGFyZ3MuZ2MpIHtcbiAgICAgICAgYXdhaXQgY2xpLmdjKCk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHJlcG9OYW1lID0gYXdhaXQgY2xpLmNyZWF0ZSgpO1xuICAgICAgY29uc29sZS5sb2cocmVwb05hbWUpO1xuXG4gICAgICBpZiAoYXJncy5sb2dpbikge1xuICAgICAgICBhd2FpdCBjbGkubG9naW4ocmVwb05hbWUpO1xuICAgICAgICBjbGkudXNhZ2VEaXIuYWR2ZXJ0aXNlKCk7XG4gICAgICB9XG4gICAgfSlcbiAgICAuY29tbWFuZCgnZ2MnLCAnQ2xlYW4gdXAgZGF5LW9sZCB0ZXN0aW5nIHJlcG9zaXRvcmllcycsIGNtZCA9PiBjbWQsIGFzeW5jIChhcmdzKSA9PiB7XG4gICAgICBjb25zdCBjbGkgPSBuZXcgQ29kZUFydGlmYWN0Q2xpKHtcbiAgICAgICAgYXNzdW1lUm9sZUFybjogYXJnc1snYXNzdW1lLXJvbGUtYXJuJ10sXG4gICAgICB9KTtcbiAgICAgIGF3YWl0IGNsaS5nYygpO1xuICAgIH0pXG4gICAgLmNvbW1hbmQoJ2xvZ2luJywgJ0xvZ2luIHRvIGEgZ2l2ZW4gcmVwb3NpdG9yeScsIGNtZCA9PiBjbWRcbiAgICAgIC5vcHRpb24oJ3JlcG8nLCB7XG4gICAgICAgIGFsaWFzOiAncicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnTmFtZSBvZiB0aGUgcmVwb3NpdG9yeSB0byBsb2cgaW4gdG8nLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgcmVxdWlyZXNBcmc6IHRydWUsXG4gICAgICB9KVxuICAgICAgLm9wdGlvbignY21kJywge1xuICAgICAgICBhbGlhczogJ2MnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1J1biBhIGNvbW1hbmQgaW4gYSBzaGVsbCBzZXQgdXAgZm9yIHRoZSB0YXJnZXQgcmVwb3NpdG9yeScsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICByZXF1aXJlc0FyZzogdHJ1ZSxcbiAgICAgIH0pLCBhc3luYyAoYXJncykgPT4ge1xuXG4gICAgICBjb25zdCBjbGkgPSBuZXcgQ29kZUFydGlmYWN0Q2xpKHtcbiAgICAgICAgYXNzdW1lUm9sZUFybjogYXJnc1snYXNzdW1lLXJvbGUtYXJuJ10sXG4gICAgICB9KTtcbiAgICAgIGF3YWl0IGNsaS5sb2dpbihhcmdzLnJlcG8pO1xuXG4gICAgICBpZiAoYXJncy5jbWQpIHtcbiAgICAgICAgYXdhaXQgY2xpLnJ1bkNvbW1hbmQoYXJncy5jbWQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2xpLnVzYWdlRGlyLmFkdmVydGlzZSgpO1xuICAgICAgfVxuICAgIH0pXG4gICAgLmNvbW1hbmQoJ3NoZWxsJywgJ1N0YXJ0IGEgc3Vic2hlbGwgd2l0aCB0aGUgcmVwb3NpdG9yeSBhY3RpdmF0ZWQnLCBjbWQgPT4gY21kXG4gICAgICAub3B0aW9uKCdyZXBvJywge1xuICAgICAgICBhbGlhczogJ3InLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ05hbWUgb2YgdGhlIHJlcG9zaXRvcnkgdG8gbG9nIGluIHRvJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHJlcXVpcmVzQXJnOiB0cnVlLFxuICAgICAgICBkZW1hbmRPcHRpb246IGZhbHNlLFxuICAgICAgfSksIGFzeW5jIChhcmdzKSA9PiB7XG4gICAgICBjb25zdCBjbGkgPSBuZXcgQ29kZUFydGlmYWN0Q2xpKHtcbiAgICAgICAgYXNzdW1lUm9sZUFybjogYXJnc1snYXNzdW1lLXJvbGUtYXJuJ10sXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IHJlcG8gPSBhd2FpdCBjbGkubG9naW4oYXJncy5yZXBvKTtcblxuICAgICAgY29uc3QgZGVmYXVsdFNoZWxsID0gcHJvY2Vzcy5wbGF0Zm9ybSA9PT0gJ3dpbjMyJyA/ICdjbWQnIDogJ2Jhc2gnO1xuXG4gICAgICBoZWFkZXIoYFNoZWxsIGFjdGl2YXRlZCBmb3IgJHtyZXBvLnJlcG9zaXRvcnlOYW1lfWApO1xuICAgICAgYXdhaXQgY2xpLnJ1bkludGVyYWN0aXZlbHkocHJvY2Vzcy5lbnYuU0hFTEwgPz8gZGVmYXVsdFNoZWxsKTtcbiAgICB9KVxuICAgIC5jb21tYW5kKCdwdWJsaXNoIDxESVJFQ1RPUlk+JywgJ1B1Ymxpc2ggYSBnaXZlbiBkaXJlY3RvcnknLCBjbWQgPT4gY21kXG4gICAgICAucG9zaXRpb25hbCgnRElSRUNUT1JZJywge1xuICAgICAgICBkZXNjcmlwdG9uOiAnRGlyZWN0b3J5IGRpc3RyaWJ1dGlvbicsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkZW1hbmRPcHRpb246IHRydWUsXG4gICAgICB9KVxuICAgICAgLm9wdGlvbigncmVwbycsIHtcbiAgICAgICAgYWxpYXM6ICdyJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdOYW1lIG9mIHRoZSByZXBvc2l0b3J5IHRvIGNyZWF0ZSAoZGVmYXVsdDogZ2VuZXJhdGUgdW5pcXVlIG5hbWUpJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHJlcXVpcmVzQXJnOiB0cnVlLFxuICAgICAgfSksIGFzeW5jIChhcmdzKSA9PiB7XG5cbiAgICAgIGNvbnN0IGNsaSA9IG5ldyBDb2RlQXJ0aWZhY3RDbGkoe1xuICAgICAgICBhc3N1bWVSb2xlQXJuOiBhcmdzWydhc3N1bWUtcm9sZS1hcm4nXSxcbiAgICAgIH0pO1xuICAgICAgYXdhaXQgY2xpLnB1Ymxpc2goYXJncy5ESVJFQ1RPUlksIGFyZ3MucmVwbyk7XG4gICAgfSlcbiAgICAuY29tbWFuZCgnZGVsZXRlJywgJ0RlbGV0ZSB0ZXN0aW5nIHJlcG9zaXRvcnknLCBjbWQgPT4gY21kXG4gICAgICAub3B0aW9uKCdyZXBvJywge1xuICAgICAgICBhbGlhczogJ3InLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ05hbWUgb2YgdGhlIHJlcG9zaXRvcnkgdG8gY2xlYW51cCAoZGVmYXVsdDogbW9zdCByZWNlbnRseSBsb2dnZWQgaW4gdG8pJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHJlcXVpcmVzQXJnOiB0cnVlLFxuICAgICAgfSksIGFzeW5jIChhcmdzKSA9PiB7XG5cbiAgICAgIGNvbnN0IGNsaSA9IG5ldyBDb2RlQXJ0aWZhY3RDbGkoe1xuICAgICAgICBhc3N1bWVSb2xlQXJuOiBhcmdzWydhc3N1bWUtcm9sZS1hcm4nXSxcbiAgICAgIH0pO1xuICAgICAgYXdhaXQgY2xpLmRlbGV0ZShhcmdzLnJlcG8pO1xuICAgIH0pXG4gICAgLmRlbWFuZENvbW1hbmQoMSwgJ1lvdSBtdXN0IHN1cHBseSBhIGNvbW1hbmQnKVxuICAgIC5oZWxwKClcbiAgICAuc2hvd0hlbHBPbkZhaWwoZmFsc2UpXG4gICAgLnBhcnNlKCk7XG59XG5cbm1haW4oKS5jYXRjaChlID0+IHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgY29uc29sZS5lcnJvcihlKTtcbiAgcHJvY2Vzcy5leGl0Q29kZSA9IDE7XG59KTtcbiJdfQ==
|
|
162
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGliLWNhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Jpbi9wdWJsaWItY2EudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRQSxvQkF5SEM7QUFqSUQ7O0dBRUc7QUFDSCwrQkFBK0I7QUFDL0IsNkNBQStCO0FBQy9CLHVFQUFtRTtBQUNuRSxxREFBaUQ7QUFFMUMsS0FBSyxVQUFVLElBQUk7SUFDeEIsTUFBTSxLQUFLO1NBQ1IsS0FBSyxDQUFDLGNBQWMsQ0FBQztTQUNyQixNQUFNLENBQUMsaUJBQWlCLEVBQUU7UUFDekIsV0FBVyxFQUFFLGdEQUFnRDtRQUM3RCxLQUFLLEVBQUUsR0FBRztRQUNWLFdBQVcsRUFBRSxJQUFJO1FBQ2pCLElBQUksRUFBRSxRQUFRO0tBQ2YsQ0FBQztTQUNELE9BQU8sQ0FBQyxRQUFRLEVBQUUsMkRBQTJELEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHO1NBQ3ZGLE1BQU0sQ0FBQyxJQUFJLEVBQUU7UUFDWixXQUFXLEVBQUUsa0NBQWtDO1FBQy9DLElBQUksRUFBRSxTQUFTO1FBQ2YsT0FBTyxFQUFFLElBQUk7S0FDZCxDQUFDO1NBQ0QsTUFBTSxDQUFDLE9BQU8sRUFBRTtRQUNmLFdBQVcsRUFBRSxzREFBc0Q7UUFDbkUsSUFBSSxFQUFFLFNBQVM7UUFDZixPQUFPLEVBQUUsSUFBSTtLQUNkLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFFbkIsTUFBTSxHQUFHLEdBQUcsSUFBSSxrQ0FBZSxDQUFDO1lBQzlCLGFBQWEsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUM7U0FDdkMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDWixNQUFNLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUNqQixDQUFDO1FBRUQsTUFBTSxRQUFRLEdBQUcsTUFBTSxHQUFH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LENBQUM7QUFDYixDQUFDO0FBRUQsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFO0lBQ2Ysc0NBQXNDO0lBQ3RDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakIsT0FBTyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7QUFDdkIsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFB1YmxpYiBDb2RlQXJ0aWZhY3QgQ0xJXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cbmltcG9ydCAqIGFzIHlhcmdzIGZyb20gJ3lhcmdzJztcbmltcG9ydCB7IENvZGVBcnRpZmFjdENsaSB9IGZyb20gJy4uL2NvZGVhcnRpZmFjdC9jb2RlYXJ0aWZhY3QtY2xpJztcbmltcG9ydCB7IGhlYWRlciB9IGZyb20gJy4uL2NvZGVhcnRpZmFjdC9kaXNwbGF5JztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG1haW4oKSB7XG4gIGF3YWl0IHlhcmdzXG4gICAgLnVzYWdlKCckMCA8Y29tbWFuZD4nKVxuICAgIC5vcHRpb24oJ2Fzc3VtZS1yb2xlLWFybicsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiAnUm9sZSB0byBhc3N1bWUgYmVmb3JlIGRvaW5nIENvZGVBcnRpZmFjdCBjYWxscycsXG4gICAgICBhbGlhczogJ2EnLFxuICAgICAgcmVxdWlyZXNBcmc6IHRydWUsXG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICB9KVxuICAgIC5jb21tYW5kKCdjcmVhdGUnLCAnQ3JlYXRlIGEgdGVtcG9yYXJ5IENvZGVBcnRpZmFjdCByZXBvc2l0b3J5IHdpdGggdXBzdHJlYW1zJywgY21kID0+IGNtZFxuICAgICAgLm9wdGlvbignZ2MnLCB7XG4gICAgICAgIGRlc2NyaXB0aW9uOiAnR2FyYmFnZSBjb2xsZWN0IG9sZCByZXBvc2l0b3JpZXMnLFxuICAgICAgICB0eXBlOiAnYm9vbGVhbicsXG4gICAgICAgIGRlZmF1bHQ6IHRydWUsXG4gICAgICB9KVxuICAgICAgLm9wdGlvbignbG9naW4nLCB7XG4gICAgICAgIGRlc2NyaXB0aW9uOiAnQXV0b21hdGljYWxseSBsb2cgaW4gdG8gdGhlIG5ld2x5IGNyZWF0ZWQgcmVwb3NpdG9yeScsXG4gICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgZGVmYXVsdDogdHJ1ZSxcbiAgICAgIH0pLCBhc3luYyAoYXJncykgPT4ge1xuXG4gICAgICBjb25zdCBjbGkgPSBuZXcgQ29kZUFydGlmYWN0Q2xpKHtcbiAgICAgICAgYXNzdW1lUm9sZUFybjogYXJnc1snYXNzdW1lLXJvbGUtYXJuJ10sXG4gICAgICB9KTtcblxuICAgICAgaWYgKGFyZ3MuZ2MpIHtcbiAgICAgICAgYXdhaXQgY2xpLmdjKCk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHJlcG9OYW1lID0gYXdhaXQgY2xpLmNyZWF0ZSgpO1xuICAgICAgY29uc29sZS5sb2cocmVwb05hbWUpO1xuXG4gICAgICBpZiAoYXJncy5sb2dpbikge1xuICAgICAgICBhd2FpdCBjbGkubG9naW4ocmVwb05hbWUpO1xuICAgICAgICBjbGkudXNhZ2VEaXIuYWR2ZXJ0aXNlKCk7XG4gICAgICB9XG4gICAgfSlcbiAgICAuY29tbWFuZCgnZ2MnLCAnQ2xlYW4gdXAgZGF5LW9sZCB0ZXN0aW5nIHJlcG9zaXRvcmllcycsIGNtZCA9PiBjbWQsIGFzeW5jIChhcmdzKSA9PiB7XG4gICAgICBjb25zdCBjbGkgPSBuZXcgQ29kZUFydGlmYWN0Q2xpKHtcbiAgICAgICAgYXNzdW1lUm9sZUFybjogYXJnc1snYXNzdW1lLXJvbGUtYXJuJ10sXG4gICAgICB9KTtcbiAgICAgIGF3YWl0IGNsaS5nYygpO1xuICAgIH0pXG4gICAgLmNvbW1hbmQoJ2xvZ2luJywgJ0xvZ2luIHRvIGEgZ2l2ZW4gcmVwb3NpdG9yeScsIGNtZCA9PiBjbWRcbiAgICAgIC5vcHRpb24oJ3JlcG8nLCB7XG4gICAgICAgIGFsaWFzOiAncicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnTmFtZSBvZiB0aGUgcmVwb3NpdG9yeSB0byBsb2cgaW4gdG8nLFxuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgcmVxdWlyZXNBcmc6IHRydWUsXG4gICAgICB9KVxuICAgICAgLm9wdGlvbignY21kJywge1xuICAgICAgICBhbGlhczogJ2MnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1J1biBhIGNvbW1hbmQgaW4gYSBzaGVsbCBzZXQgdXAgZm9yIHRoZSB0YXJnZXQgcmVwb3NpdG9yeScsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICByZXF1aXJlc0FyZzogdHJ1ZSxcbiAgICAgIH0pLCBhc3luYyAoYXJncykgPT4ge1xuXG4gICAgICBjb25zdCBjbGkgPSBuZXcgQ29kZUFydGlmYWN0Q2xpKHtcbiAgICAgICAgYXNzdW1lUm9sZUFybjogYXJnc1snYXNzdW1lLXJvbGUtYXJuJ10sXG4gICAgICB9KTtcbiAgICAgIGF3YWl0IGNsaS5sb2dpbihhcmdzLnJlcG8pO1xuXG4gICAgICBpZiAoYXJncy5jbWQpIHtcbiAgICAgICAgYXdhaXQgY2xpLnJ1bkNvbW1hbmQoYXJncy5jbWQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2xpLnVzYWdlRGlyLmFkdmVydGlzZSgpO1xuICAgICAgfVxuICAgIH0pXG4gICAgLmNvbW1hbmQoJ3NoZWxsJywgJ1N0YXJ0IGEgc3Vic2hlbGwgd2l0aCB0aGUgcmVwb3NpdG9yeSBhY3RpdmF0ZWQnLCBjbWQgPT4gY21kXG4gICAgICAub3B0aW9uKCdyZXBvJywge1xuICAgICAgICBhbGlhczogJ3InLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ05hbWUgb2YgdGhlIHJlcG9zaXRvcnkgdG8gbG9nIGluIHRvJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHJlcXVpcmVzQXJnOiB0cnVlLFxuICAgICAgICBkZW1hbmRPcHRpb246IGZhbHNlLFxuICAgICAgfSksIGFzeW5jIChhcmdzKSA9PiB7XG4gICAgICBjb25zdCBjbGkgPSBuZXcgQ29kZUFydGlmYWN0Q2xpKHtcbiAgICAgICAgYXNzdW1lUm9sZUFybjogYXJnc1snYXNzdW1lLXJvbGUtYXJuJ10sXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IHJlcG8gPSBhd2FpdCBjbGkubG9naW4oYXJncy5yZXBvKTtcblxuICAgICAgY29uc3QgZGVmYXVsdFNoZWxsID0gcHJvY2Vzcy5wbGF0Zm9ybSA9PT0gJ3dpbjMyJyA/ICdjbWQnIDogJ2Jhc2gnO1xuXG4gICAgICBoZWFkZXIoYFNoZWxsIGFjdGl2YXRlZCBmb3IgJHtyZXBvLnJlcG9zaXRvcnlOYW1lfWApO1xuICAgICAgYXdhaXQgY2xpLnJ1bkludGVyYWN0aXZlbHkocHJvY2Vzcy5lbnYuU0hFTEwgPz8gZGVmYXVsdFNoZWxsKTtcbiAgICB9KVxuICAgIC5jb21tYW5kKCdwdWJsaXNoIDxESVJFQ1RPUlk+JywgJ1B1Ymxpc2ggYSBnaXZlbiBkaXJlY3RvcnknLCBjbWQgPT4gY21kXG4gICAgICAucG9zaXRpb25hbCgnRElSRUNUT1JZJywge1xuICAgICAgICBkZXNjcmlwdG9uOiAnRGlyZWN0b3J5IGRpc3RyaWJ1dGlvbicsXG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBkZW1hbmRPcHRpb246IHRydWUsXG4gICAgICB9KVxuICAgICAgLm9wdGlvbigncmVwbycsIHtcbiAgICAgICAgYWxpYXM6ICdyJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdOYW1lIG9mIHRoZSByZXBvc2l0b3J5IHRvIGNyZWF0ZSAoZGVmYXVsdDogZ2VuZXJhdGUgdW5pcXVlIG5hbWUpJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHJlcXVpcmVzQXJnOiB0cnVlLFxuICAgICAgfSksIGFzeW5jIChhcmdzKSA9PiB7XG5cbiAgICAgIGNvbnN0IGNsaSA9IG5ldyBDb2RlQXJ0aWZhY3RDbGkoe1xuICAgICAgICBhc3N1bWVSb2xlQXJuOiBhcmdzWydhc3N1bWUtcm9sZS1hcm4nXSxcbiAgICAgIH0pO1xuICAgICAgYXdhaXQgY2xpLnB1Ymxpc2goYXJncy5ESVJFQ1RPUlksIGFyZ3MucmVwbyk7XG4gICAgfSlcbiAgICAuY29tbWFuZCgnZGVsZXRlJywgJ0RlbGV0ZSB0ZXN0aW5nIHJlcG9zaXRvcnknLCBjbWQgPT4gY21kXG4gICAgICAub3B0aW9uKCdyZXBvJywge1xuICAgICAgICBhbGlhczogJ3InLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ05hbWUgb2YgdGhlIHJlcG9zaXRvcnkgdG8gY2xlYW51cCAoZGVmYXVsdDogbW9zdCByZWNlbnRseSBsb2dnZWQgaW4gdG8pJyxcbiAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgIHJlcXVpcmVzQXJnOiB0cnVlLFxuICAgICAgfSksIGFzeW5jIChhcmdzKSA9PiB7XG5cbiAgICAgIGNvbnN0IGNsaSA9IG5ldyBDb2RlQXJ0aWZhY3RDbGkoe1xuICAgICAgICBhc3N1bWVSb2xlQXJuOiBhcmdzWydhc3N1bWUtcm9sZS1hcm4nXSxcbiAgICAgIH0pO1xuICAgICAgYXdhaXQgY2xpLmRlbGV0ZShhcmdzLnJlcG8pO1xuICAgIH0pXG4gICAgLmRlbWFuZENvbW1hbmQoMSwgJ1lvdSBtdXN0IHN1cHBseSBhIGNvbW1hbmQnKVxuICAgIC5oZWxwKClcbiAgICAuc2hvd0hlbHBPbkZhaWwoZmFsc2UpXG4gICAgLnBhcnNlKCk7XG59XG5cbm1haW4oKS5jYXRjaChlID0+IHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgY29uc29sZS5lcnJvcihlKTtcbiAgcHJvY2Vzcy5leGl0Q29kZSA9IDE7XG59KTtcbiJdfQ==
|
package/lib/bin/publib-golang.js
CHANGED
|
@@ -16,23 +16,32 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
16
16
|
}) : function(o, v) {
|
|
17
17
|
o["default"] = v;
|
|
18
18
|
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || function (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
};
|
|
26
|
-
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
27
36
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
37
|
const go = __importStar(require("../targets/go"));
|
|
29
38
|
const releaser = new go.GoReleaser({
|
|
30
39
|
dir: process.argv[2],
|
|
31
40
|
branch: process.env.GIT_BRANCH,
|
|
32
|
-
dryRun: (
|
|
41
|
+
dryRun: (process.env.DRYRUN ?? 'false').toLowerCase() === 'true',
|
|
33
42
|
email: process.env.GIT_USER_EMAIL,
|
|
34
43
|
username: process.env.GIT_USER_NAME,
|
|
35
44
|
version: process.env.VERSION,
|
|
36
45
|
});
|
|
37
46
|
releaser.release();
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGliLWdvbGFuZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iaW4vcHVibGliLWdvbGFuZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxrREFBb0M7QUFFcEMsTUFBTSxRQUFRLEdBQUcsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDO0lBQ2pDLEdBQUcsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNwQixNQUFNLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVO0lBQzlCLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxJQUFJLE9BQU8sQ0FBQyxDQUFDLFdBQVcsRUFBRSxLQUFLLE1BQU07SUFDaEUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYztJQUNqQyxRQUFRLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxhQUFhO0lBQ25DLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU87Q0FDN0IsQ0FBQyxDQUFDO0FBRUgsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiIyEvdXNyL2Jpbi9lbnYgbm9kZVxuaW1wb3J0ICogYXMgZ28gZnJvbSAnLi4vdGFyZ2V0cy9nbyc7XG5cbmNvbnN0IHJlbGVhc2VyID0gbmV3IGdvLkdvUmVsZWFzZXIoe1xuICBkaXI6IHByb2Nlc3MuYXJndlsyXSxcbiAgYnJhbmNoOiBwcm9jZXNzLmVudi5HSVRfQlJBTkNILFxuICBkcnlSdW46IChwcm9jZXNzLmVudi5EUllSVU4gPz8gJ2ZhbHNlJykudG9Mb3dlckNhc2UoKSA9PT0gJ3RydWUnLFxuICBlbWFpbDogcHJvY2Vzcy5lbnYuR0lUX1VTRVJfRU1BSUwsXG4gIHVzZXJuYW1lOiBwcm9jZXNzLmVudi5HSVRfVVNFUl9OQU1FLFxuICB2ZXJzaW9uOiBwcm9jZXNzLmVudi5WRVJTSU9OLFxufSk7XG5cbnJlbGVhc2VyLnJlbGVhc2UoKTsiXX0=
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A temporary directory that cleans when it goes out of scope
|
|
3
|
+
*
|
|
4
|
+
* Use with `using`. Could have been async but it's depending
|
|
5
|
+
* on an already-sync API, so why not sync?
|
|
6
|
+
*/
|
|
7
|
+
export declare function autoCleanDir(): {
|
|
8
|
+
dir: string;
|
|
9
|
+
[Symbol.asyncDispose]: () => Promise<void>;
|
|
10
|
+
};
|