From 495409509c39e58df677cd2e8a96dba0f80357d6 Mon Sep 17 00:00:00 2001 From: Bryan Clark Date: Fri, 15 Nov 2019 16:01:13 -0800 Subject: [PATCH] parent 52c60e0768c1c2fabcab3acf97aa77c5dbc32dfa author Bryan Clark 1573862473 -0800 committer Bryan Clark 1574976093 -0800 Adding maven auth support ignore vscode directory move required parameters to auth module username and password are required from within the auth module now. Update the tests to ensure this is the case. Add generated auth and setup-java Move auth to the bottom of setup Support ids generated and pretty files use server-id instead of ambigous id Use console.log where appropriate Adding maven auth support ignore vscode directory move required parameters to auth module username and password are required from within the auth module now. Update the tests to ensure this is the case. Add generated auth and setup-java Move auth to the bottom of setup generated and pretty files use server-id instead of ambigous id --- lib/auth.js | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 lib/auth.js diff --git a/lib/auth.js b/lib/auth.js new file mode 100644 index 0000000..9b03d1c --- /dev/null +++ b/lib/auth.js @@ -0,0 +1,62 @@ +"use strict"; +var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; + result["default"] = mod; + return result; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const fs = __importStar(require("fs")); +const os = __importStar(require("os")); +const path = __importStar(require("path")); +const core = __importStar(require("@actions/core")); +const io = __importStar(require("@actions/io")); +exports.M2_DIR = '.m2'; +exports.SETTINGS_FILE = 'settings.xml'; +function configAuthentication(id, username, password) { + return __awaiter(this, void 0, void 0, function* () { + if (id && username && password) { + core.debug(`configAuthentication with ${username} and a password`); + const directory = path.join(os.homedir(), exports.M2_DIR); + yield io.mkdirP(directory); + core.debug(`created directory ${directory}`); + yield write(directory, generate(id, username, password)); + } + else { + core.debug(`no auth without username: ${username} and password: ${password}`); + } + }); +} +exports.configAuthentication = configAuthentication; +// only exported for testing purposes +function generate(id, username, password) { + return ` + + + + ${id} + ${username} + ${password} + + + + `; +} +exports.generate = generate; +function write(directory, settings) { + return __awaiter(this, void 0, void 0, function* () { + const options = { encoding: 'utf-8' }; + const location = path.join(directory, exports.SETTINGS_FILE); + core.debug(`writing ${location}`); + return fs.writeFileSync(location, settings, options); + }); +}