Merge pull request #9 from hecrj/use-toolchain-install

Use toolchain install instead of multiple commands
This commit is contained in:
Héctor Ramón 2019-10-27 20:06:30 +01:00 committed by GitHub
commit ffd46aa513
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 24 additions and 17 deletions

View File

@ -32,14 +32,11 @@ function run() {
.filter((target) => target.length > 0);
if (version) {
yield rustup.install();
yield exec.exec('rustup', ['toolchain', 'install', version,
...(components.length > 0 ? ['-c', ...components] : []),
...(targets.length > 0 ? ['-t', ...targets] : []),
]);
yield exec.exec('rustup', ['default', version]);
yield exec.exec('rustup', ['update', version]);
for (let component of components) {
yield exec.exec('rustup', ['component', 'add', component]);
}
for (let target of targets) {
yield exec.exec('rustup', ['target', 'add', target]);
}
}
}
catch (error) {

View File

@ -30,6 +30,12 @@ function install() {
core.debug('rustup is located under: ' + toolPath);
core.addPath(path.join(toolPath, 'bin'));
}
else {
// Update the GitHub managed VM version of rustup
// to leverage newer features like "latest latest compatible nightly"
yield exec.exec('rustup', ['self', 'update']);
yield exec.exec('rustup', ['set', 'profile', 'minimal']);
}
});
}
exports.install = install;

View File

@ -6,10 +6,12 @@ import * as os from 'os';
async function run() {
try {
const version = core.getInput('rust-version');
const components = core.getInput('components')
.split(',')
.map((component) => component.trim())
.filter((component) => component.length > 0);
const targets = core.getInput('targets')
.split(',')
.map((target) => target.trim())
@ -17,16 +19,16 @@ async function run() {
if(version) {
await rustup.install();
await exec.exec(
'rustup',
['toolchain', 'install', version,
...(components.length > 0 ? ['-c', ...components] : []),
...(targets.length > 0 ? ['-t', ...targets] : []),
]
);
await exec.exec('rustup', ['default', version]);
await exec.exec('rustup', ['update', version]);
for(let component of components) {
await exec.exec('rustup', ['component', 'add', component]);
}
for(let target of targets) {
await exec.exec('rustup', ['target', 'add', target]);
}
}
} catch (error) {
core.setFailed(error.message);

View File

@ -15,9 +15,11 @@ export async function install() {
core.debug('rustup is located under: ' + toolPath);
core.addPath(path.join(toolPath, 'bin'));
} else {
// update the GitHub managed VM version of rustup
// Update the GitHub managed VM version of rustup
// to leverage newer features like "latest latest compatible nightly"
await exec.exec('rustup', ['self', 'update']);
await exec.exec('rustup', ['set', 'profile', 'minimal']);
}
}