Skip to content

Commit

Permalink
chore : debugging actions
Browse files Browse the repository at this point in the history
- pre-release
  • Loading branch information
daviddexter committed Mar 10, 2020
1 parent d21041b commit 8ff29a4
Show file tree
Hide file tree
Showing 4 changed files with 80 additions and 22 deletions.
1 change: 1 addition & 0 deletions dist/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -1362,6 +1362,7 @@ function setupAndroid(version) {
yield exec.exec(`sudo chown -R ${user}:${user} ${homeDirectory}/android`);
yield exec.exec(`sudo chown -R ${user}:${user} ${homeDirectory}/.android`);
yield exec.exec(`bash -c " ls -la ${homeDirectory}/android/sdk/tools/"`);
yield exec.exec(`bash -c "sdkmanager --list"`);
yield exec.exec(`bash -c "sudo ${homeDirectory}/android/sdk/tools/bin/sdkmanager "tools" "platform-tools" "`);
yield exec.exec(`bash -c "sudo ${homeDirectory}/android/sdk/tools/bin/sdkmanager "build-tools;${version}.0.0" "`);
yield exec.exec(`bash -c "sudo ${homeDirectory}/android/sdk/tools/bin/sdkmanager "platforms;android-${version}" "`);
Expand Down
36 changes: 36 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@
"dependencies": {
"@actions/core": "^1.2.2",
"@actions/exec": "^1.0.3",
"@actions/io": "^1.0.2"
"@actions/io": "^1.0.2",
"@actions/tool-cache": "^1.3.3"
},
"devDependencies": {
"@types/node": "^13.7.4",
Expand Down
62 changes: 41 additions & 21 deletions src/setup.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,14 @@ import * as path from 'path';
import * as exec from '@actions/exec';
import * as core from '@actions/core';
import * as io from '@actions/io';
import * as tc from '@actions/tool-cache';


const IS_WINDOWS = process.platform === 'win32';
const IS_DARWIN = process.platform === 'darwin';
const IS_LINUX = process.platform === 'linux';
// const IS_WINDOWS = process.platform === 'win32';
// const IS_DARWIN = process.platform === 'darwin';
// const IS_LINUX = process.platform === 'linux';

let homeDirectory = process.env['HOME'] || process.env['USERPROFILE'];
let homeDirectory = process.env['HOME'] || process.env['USERPROFILE'] as string;
let user = process.env['USER'];
interface Options { listeners: {} };

Expand All @@ -17,6 +18,8 @@ export async function setupAndroid(version: string): Promise<void>{
await exec.exec('sudo apt-get update');
await exec.exec('sudo apt-get install -qqy ca-certificates curl apt-transport-https');
await exec.exec('sudo apt-get install -qqy unzip python3-cffi lsb-release');

// download firebase
console.log('=== installing firebase tools ===');
await exec.exec(`bash -c "curl -sL https://firebase.tools | bash"` );

Expand All @@ -28,41 +31,58 @@ export async function setupAndroid(version: string): Promise<void>{
},
};

//setup env variables to be used to download google-cloud-sdk
await exec.exec('lsb_release -c -s',undefined,lsbReleaseObj);
core.exportVariable('LSB_RELEASE', lsbRelease);
core.exportVariable('CLOUD_SDK_REPO', `cloud-sdk-${lsbRelease}`);

console.log('=== installing gcloud SDK ===');
await exec.exec('echo "deb https://packages.cloud.google.com/apt $CLOUD_SDK_REPO main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list');
await exec.exec(`bash -c "curl https://packages.cloud.google.com/apt/doc/apt-key.gpg --output ${homeDirectory}/key.gpg "`);

// download gcloud gpg key
// await exec.exec(`bash -c "curl https://packages.cloud.google.com/apt/doc/apt-key.gpg --output ${homeDirectory}/key.gpg "`);

const gcloudGPGPath = await tc.downloadTool('https://packages.cloud.google.com/apt/doc/apt-key.gpg');
await io.mv(gcloudGPGPath, path.join(homeDirectory, "key.gpg"));
await exec.exec(`sudo apt-key add ${homeDirectory}/key.gpg`);
//download gcloud-sdk
await exec.exec('bash -c "sudo apt-get update && sudo apt-get install -qqy google-cloud-sdk "');
await exec.exec(`bash -c "gcloud config set core/disable_usage_reporting true && gcloud config set component_manager/disable_update_check true "`);

//download android sdk
await io.mkdirP(`${homeDirectory}/android/sdk`);

core.exportVariable('ANDROID_HOME',`${homeDirectory}/android/sdk`);
core.exportVariable('SDK_VERSION','sdk-tools-linux-4333796.zip');
core.exportVariable('ADB_INSTALL_TIMEOUT','120');

//await exec.exec(`bash -c "curl --silent --show-error --location --fail --retry 3 --output ${homeDirectory}/$SDK_VERSION https://dl.google.com/android/repository/$SDK_VERSION"`);
//await exec.exec(`bash -c "sudo unzip -q ${homeDirectory}/$SDK_VERSION -d $ANDROID_HOME && sudo rm -rf ${homeDirectory}/$SDK_VERSION "`);
const androidSDKPath = await tc.downloadTool('https://dl.google.com/android/repository/$SDK_VERSION');
await tc.extractZip(androidSDKPath, '$ANDROID_HOME');

await io.mkdirP(`${homeDirectory}/android/sdk`);
await exec.exec(`bash -c "curl --silent --show-error --location --fail --retry 3 --output ${homeDirectory}/$SDK_VERSION https://dl.google.com/android/repository/$SDK_VERSION"`);
await exec.exec(`bash -c "sudo unzip -q ${homeDirectory}/$SDK_VERSION -d $ANDROID_HOME && sudo rm -rf ${homeDirectory}/$SDK_VERSION "`);

core.addPath(`${homeDirectory}/android/sdk/tools`);
core.addPath(`${homeDirectory}/android/sdk/tools/bin`);
core.addPath(`${homeDirectory}/android/sdk/platform-tools`);
core.addPath('$ANDROID_HOME/tools');
core.addPath('$ANDROID_HOME/tools/bin');
core.addPath('$ANDROID_HOME/platform-tools');

await exec.exec(`bash -c "echo $PATH" `);
await exec.exec(`bash -c "echo $ANDROID_HOME" `);

console.log('=== installing android SDK ===');

await io.mkdirP(`${homeDirectory}/.android`);
await exec.exec(`bash -c "sudo echo '### User Sources for Android SDK Manager' | sudo tee -a ${homeDirectory}/.android/repositories.cfg"`);
await exec.exec(`bash -c "yes | sudo ${homeDirectory}/android/sdk/tools/bin/sdkmanager --licenses"`);
await exec.exec(`sudo chown -R ${user}:${user} ${homeDirectory}/android`);
await exec.exec(`sudo chown -R ${user}:${user} ${homeDirectory}/.android`);
await exec.exec(`bash -c " ls -la ${homeDirectory}/android/sdk/tools/"`)
await exec.exec(`bash -c "sudo ${homeDirectory}/android/sdk/tools/bin/sdkmanager "tools" "platform-tools" "`);
await exec.exec(`bash -c "sudo ${homeDirectory}/android/sdk/tools/bin/sdkmanager "build-tools;${version}.0.0" "`);
await exec.exec(`bash -c "sudo ${homeDirectory}/android/sdk/tools/bin/sdkmanager "platforms;android-${version}" "`);
await exec.exec(`bash -c "sudo ${homeDirectory}/android/sdk/tools/bin/sdkmanager --update "`)
// await io.mkdirP(`${homeDirectory}/.android`);
// await exec.exec(`bash -c "sudo echo '### User Sources for Android SDK Manager' | sudo tee -a ${homeDirectory}/.android/repositories.cfg"`);
await exec.exec(`bash -c "mkdir ~/.android && echo '### User Sources for Android SDK Manager' > ~/.android/repositories.cfg"`);
await exec.exec(`bash -c "sudo ln -s $ANDROID_HOME/tools/bin/sdkmanager /usr/lib/sdkmanager"`);
await exec.exec(`bash -c "yes | sudo sdkmanager --list"`);
await exec.exec(`bash -c "yes | sudo sdkmanager --licenses"`);
// await exec.exec(`sudo chown -R ${user}:${user} ${homeDirectory}/android`);
// await exec.exec(`sudo chown -R ${user}:${user} ${homeDirectory}/.android`);
// await exec.exec(`bash -c " ls -la ${homeDirectory}/android/sdk/tools/"`);
// await exec.exec(`bash -c "sdkmanager --list"`);
// await exec.exec(`bash -c "sudo ${homeDirectory}/android/sdk/tools/bin/sdkmanager "tools" "platform-tools" "`);
// await exec.exec(`bash -c "sudo ${homeDirectory}/android/sdk/tools/bin/sdkmanager "build-tools;${version}.0.0" "`);
// await exec.exec(`bash -c "sudo ${homeDirectory}/android/sdk/tools/bin/sdkmanager "platforms;android-${version}" "`);
// await exec.exec(`bash -c "sudo ${homeDirectory}/android/sdk/tools/bin/sdkmanager --update "`)
}

0 comments on commit 8ff29a4

Please sign in to comment.