mirror of
https://github.com/docker/login-action
synced 2024-11-22 05:01:42 +00:00
Merge pull request #13 from crazy-max/master
Take the password from stdin
This commit is contained in:
commit
0f9fb80421
4 changed files with 15 additions and 38 deletions
30
CHANGELOG.md
30
CHANGELOG.md
|
@ -1,30 +0,0 @@
|
|||
# Changelog
|
||||
|
||||
## 1.3.0 (2020/08/21)
|
||||
|
||||
* Handle AWS CLI v2
|
||||
* Check AWS CLI version
|
||||
* Add tests
|
||||
* Add example for Azure Container Registry (ACR)
|
||||
* Move zeit/ncc to vercel/ncc
|
||||
|
||||
## 1.2.0 (2020/08/20)
|
||||
|
||||
* Add support for AWS Elastic Container Registry (ECR)
|
||||
* Add example for Google Container Registry (GCR)
|
||||
|
||||
## 1.1.1 (2020/08/16)
|
||||
|
||||
* Typo
|
||||
|
||||
## 1.1.0 (2020/08/15)
|
||||
|
||||
* Add tests and examples for GitLab and GitHub Package Registry
|
||||
|
||||
## 1.0.1 (2020/08/15)
|
||||
|
||||
* Add LICENSE
|
||||
|
||||
## 1.0.0 (2020/08/15)
|
||||
|
||||
* Initial version
|
9
dist/index.js
generated
vendored
9
dist/index.js
generated
vendored
|
@ -2908,12 +2908,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.exec = void 0;
|
||||
const actionsExec = __importStar(__webpack_require__(514));
|
||||
exports.exec = (command, args = [], silent) => __awaiter(void 0, void 0, void 0, function* () {
|
||||
exports.exec = (command, args = [], silent, stdin) => __awaiter(void 0, void 0, void 0, function* () {
|
||||
let stdout = '';
|
||||
let stderr = '';
|
||||
const options = {
|
||||
silent: silent,
|
||||
ignoreReturnCode: true
|
||||
ignoreReturnCode: true,
|
||||
input: Buffer.from(stdin || '')
|
||||
};
|
||||
options.listeners = {
|
||||
stdout: (data) => {
|
||||
|
@ -2995,7 +2996,7 @@ function logout(registry) {
|
|||
exports.logout = logout;
|
||||
function loginStandard(registry, username, password) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
let loginArgs = ['login', '--password', password];
|
||||
let loginArgs = ['login', '--password-stdin'];
|
||||
if (username) {
|
||||
loginArgs.push('--username', username);
|
||||
}
|
||||
|
@ -3006,7 +3007,7 @@ function loginStandard(registry, username, password) {
|
|||
else {
|
||||
core.info(`🔑 Logging into DockerHub...`);
|
||||
}
|
||||
yield execm.exec('docker', loginArgs, true).then(res => {
|
||||
yield execm.exec('docker', loginArgs, true, password).then(res => {
|
||||
if (res.stderr != '' && !res.success) {
|
||||
throw new Error(res.stderr);
|
||||
}
|
||||
|
|
|
@ -19,7 +19,7 @@ export async function logout(registry: string): Promise<void> {
|
|||
}
|
||||
|
||||
export async function loginStandard(registry: string, username: string, password: string): Promise<void> {
|
||||
let loginArgs: Array<string> = ['login', '--password', password];
|
||||
let loginArgs: Array<string> = ['login', '--password-stdin'];
|
||||
if (username) {
|
||||
loginArgs.push('--username', username);
|
||||
}
|
||||
|
@ -30,7 +30,7 @@ export async function loginStandard(registry: string, username: string, password
|
|||
} else {
|
||||
core.info(`🔑 Logging into DockerHub...`);
|
||||
}
|
||||
await execm.exec('docker', loginArgs, true).then(res => {
|
||||
await execm.exec('docker', loginArgs, true, password).then(res => {
|
||||
if (res.stderr != '' && !res.success) {
|
||||
throw new Error(res.stderr);
|
||||
}
|
||||
|
|
10
src/exec.ts
10
src/exec.ts
|
@ -7,13 +7,19 @@ export interface ExecResult {
|
|||
stderr: string;
|
||||
}
|
||||
|
||||
export const exec = async (command: string, args: string[] = [], silent: boolean): Promise<ExecResult> => {
|
||||
export const exec = async (
|
||||
command: string,
|
||||
args: string[] = [],
|
||||
silent: boolean,
|
||||
stdin?: string
|
||||
): Promise<ExecResult> => {
|
||||
let stdout: string = '';
|
||||
let stderr: string = '';
|
||||
|
||||
const options: ExecOptions = {
|
||||
silent: silent,
|
||||
ignoreReturnCode: true
|
||||
ignoreReturnCode: true,
|
||||
input: Buffer.from(stdin || '')
|
||||
};
|
||||
options.listeners = {
|
||||
stdout: (data: Buffer) => {
|
||||
|
|
Loading…
Reference in a new issue