Skip to content

Commit

Permalink
Merge pull request #38 from suryavaddiraju/development
Browse files Browse the repository at this point in the history
v2.0.8
  • Loading branch information
suryavaddiraju authored May 14, 2024
2 parents 83cc6ca + 7c49cfa commit a03ef10
Show file tree
Hide file tree
Showing 5 changed files with 70 additions and 53 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/node.js.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
with:
node-version: '20.x'
registry-url: 'https://registry.npmjs.org'
- run: npm ci
- run: npm ci --ignore-scripts
- run: npm publish
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
56 changes: 11 additions & 45 deletions lib/postinstall.mjs
Original file line number Diff line number Diff line change
@@ -1,51 +1,17 @@
import * as fs from "node:fs";
import https from 'node:https';
import {existsSync,chmodSync} from "node:fs";
let package_name = "";
let offline_file = "viu";
if (process.platform==='darwin'&& process.arch==='x64'){
package_name = "viu-x86_64-apple-darwin"
if (!existsSync("./bin")) {
throw new Error("Platform not supported, Request to manually download the viu from rust standard installation page and place it in your system environment variables.")
}
else if (process.platform==='win32'&& process.arch==='x64'){
package_name = "viu-x86_64-pc-windows-msvc.exe";
offline_file = "viu.exe";
}
else if (process.platform==='linux'&& process.arch==='x64'){
package_name = "viu-x86_64-unknown-linux-musl"
}
else if (process.platform==='linux'&& process.arch==='arm64'){
package_name = "viu-aprocess.arch64-unknown-linux-musl"
}
else if (process.platform==='linux'&& process.arch==='arm' && process.config.variables.arm_version === 7){
package_name = "viu-armv7-unknown-linux-musleabihf"
}
else if(process.platform==='linux'&& process.arch==='arm' && process.config.variables.arm_version !== 7){
package_name = "viu-arm-unknown-linux-musleabihf"
if (process.platform==='win32'&& process.arch==='x64'){
package_name = "./bin/viu.exe";
}
else{
throw new Error("Platform not supported, Request to manually download the viu fromrust standard installation page and place it in the bin folder.")
package_name = "./bin/viu";
}
const url = `https://github.com/atanunq/viu/releases/latest/download/${package_name}`;
function download(url, dest) {
const req = https.get(url);
req.on('response', (res) => {
if (res.statusCode === 200) {
res.pipe(dest);
}
else if (res.statusCode === 302 || res.statusCode === 301) {
download(res.headers.location, dest);
}
else{
console.error('Failed to download:', res.statusCode, res.statusMessage);
}
});
};
if (!fs.existsSync("./bin")) {
fs.mkdirSync("./bin");
if (!existsSync(package_name)){
throw new Error("Platform not supported, Request to manually download the viu from rust standard installation page and place it in your system environment variables.")
}
const binaryPath = `./bin/${offline_file}`;
if (!fs.existsSync(binaryPath)) {
fs.closeSync(fs.openSync(binaryPath, 'w'));
const file = fs.createWriteStream(binaryPath);
download(url,file);
fs.chmodSync(binaryPath, 0o755);
};
else{
chmodSync(package_name, 0o755);
}
50 changes: 50 additions & 0 deletions lib/preinstall.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
import * as fs from "node:fs";
import https from 'node:https';
let package_name = "";
let offline_file = "viu";
if (process.platform==='darwin'&& process.arch==='x64'){
package_name = "viu-x86_64-apple-darwin"
}
else if (process.platform==='win32'&& process.arch==='x64'){
package_name = "viu-x86_64-pc-windows-msvc.exe";
offline_file = "viu.exe";
}
else if (process.platform==='linux'&& process.arch==='x64'){
package_name = "viu-x86_64-unknown-linux-musl"
}
else if (process.platform==='linux'&& process.arch==='arm64'){
package_name = "viu-aprocess.arch64-unknown-linux-musl"
}
else if (process.platform==='linux'&& process.arch==='arm' && process.config.variables.arm_version === 7){
package_name = "viu-armv7-unknown-linux-musleabihf"
}
else if(process.platform==='linux'&& process.arch==='arm' && process.config.variables.arm_version !== 7){
package_name = "viu-arm-unknown-linux-musleabihf"
}
else{
throw new Error("Platform not supported, Request to manually download the viu fromrust standard installation page and place it in the bin folder.")
}
const url = `https://github.com/atanunq/viu/releases/latest/download/${package_name}`;
function download(url, dest) {
const req = https.get(url);
req.on('response', (res) => {
if (res.statusCode === 200) {
res.pipe(dest);
}
else if (res.statusCode === 302 || res.statusCode === 301) {
download(res.headers.location, dest);
}
else{
console.error('Failed to download:', res.statusCode, res.statusMessage);
}
});
};
if (!fs.existsSync("./bin")) {
fs.mkdirSync("./bin");
}
const binaryPath = `./bin/${offline_file}`;
if (!fs.existsSync(binaryPath)) {
fs.closeSync(fs.openSync(binaryPath, 'w'));
const file = fs.createWriteStream(binaryPath);
download(url,file);
};
8 changes: 4 additions & 4 deletions package-lock.json

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

7 changes: 4 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
{
"name": "irctc-api",
"description": "An exclusive NodeJs only package built on top of IRCTC Website APIs to book train tickets, managing user profile faster and simpler from anywhere in the world",
"version": "2.0.7",
"version": "2.0.8",
"scripts": {
"preinstall": "node ./lib/preinstall.mjs",
"postinstall": "node ./lib/postinstall.mjs",
"test": "echo \"Error: no test specified\" && exit 1"
},
Expand Down Expand Up @@ -59,9 +60,9 @@
],
"dependencies": {
"axios": "^1.6.8",
"axios-cookiejar-support": "^5.0.1",
"axios-cookiejar-support": "^5.0.2",
"cheerio": "^1.0.0-rc.12",
"tough-cookie": "^4.1.3"
"tough-cookie": "^4.1.4"
},
"engines": {
"node": ">20.0.0",
Expand Down

0 comments on commit a03ef10

Please sign in to comment.