ci(providers): updated versions providers

This commit is contained in:
Leifer Mendez
2023-01-01 19:10:57 +01:00
parent 38cd1593a1
commit a3c2c85d90
7 changed files with 94 additions and 18 deletions

View File

@@ -0,0 +1,44 @@
name: Rev Major Providers
on:
schedule:
- cron: '0 9 * * *'
jobs:
check-npm:
name: Install Dependencies
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: 16.x
cache: 'yarn'
registry-url: https://registry.npmjs.org/
- run: corepack enable
- name: Install NPM Dependencies
run: yarn install --immutable --network-timeout 300000
- name: Check Baileys
run: yarn node ./scripts/checker.js --name=baileys --stable=false
- name: Check Venom
run: yarn node ./scripts/checker.js --name=venom --stable=false
- name: Check web-whatsapp
run: yarn node ./scripts/checker.js --name=web-whatsapp --stable=false
- name: Check Meta
run: yarn node ./scripts/checker.js --name=meta --stable=false
- name: Check Twilio
run: yarn node ./scripts/checker.js --name=twilio --stable=false
- uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: 'ci(providers): 🚩 Check BREAKING CHANGE'

View File

@@ -29,20 +29,20 @@ jobs:
run: yarn install --immutable --network-timeout 300000
- name: Check Baileys
run: yarn node ./scripts/checker.js baileys
run: yarn node ./scripts/checker.js --name=baileys --stable=true
- name: Check Venom
run: yarn node ./scripts/checker.js venom
run: yarn node ./scripts/checker.js --name=venom --stable=true
- name: Check web-whatsapp
run: yarn node ./scripts/checker.js web-whatsapp
run: yarn node ./scripts/checker.js --name=web-whatsapp --stable=true
- name: Check Meta
run: yarn node ./scripts/checker.js meta
run: yarn node ./scripts/checker.js --name=meta --stable=true
- name: Check Twilio
run: yarn node ./scripts/checker.js twilio
run: yarn node ./scripts/checker.js --name=twilio --stable=true
- uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: 'ci(providers): updated versions providers'
commit_message: 'ci(providers): 👍 updated versions stable providers'

View File

@@ -1,6 +1,6 @@
{
"dependencies": {
"@adiwajshing/baileys": "5.0.0",
"@adiwajshing/baileys": "4.4.0",
"mime-types": "2.1.35",
"wa-sticker-formatter": "4.3.2"
}

View File

@@ -11,7 +11,7 @@ const OS_ENVIROMENT_WIN = process.platform.includes('win32')
const PATH_PACKAGES = join(__dirname, '..', `packages`)
const PATH_STARTERS = join(__dirname, '..', `starters`, `apps`)
const NPM_COMMAND = OS_ENVIROMENT_WIN ? 'npm.cmd' : 'npm'
const [PKG_NAME] = process.argv.slice(2) || [null]
const [PKG_NAME, PKG_STABLE] = process.argv.slice(2) || [null, null]
/**
* Revisar ultima version de una paquetes
@@ -29,12 +29,36 @@ const checkPkg = async (pkgName = '') => {
return stdout.trim().replace('\n', '')
}
/**
* Revisar ultima version de una paquetes
* @param {*} pkgName
*/
const checkPkgStable = async (pkgName = '', version = '') => {
const { stdout } = await cmd(
NPM_COMMAND,
[
'show',
`${pkgName}@${version.split('.').shift()}.*`,
'version',
'--json',
],
{
stdio: 'inherit',
}
)
const listVersions = JSON.parse(stdout).reverse()
console.log(`[${pkgName}]: `, listVersions)
return listVersions.at(0)
}
/**
* Revisar todas las dependencias del provider
* @param {*} provider
* @param {*} stable
* @returns
*/
const checkEveryProvider = async (provider = '') => {
const checkEveryProvider = async (provider = '', stable = true) => {
const pkgDependencies = readFileSync(
join(PATH_PACKAGES, 'provider', 'src', provider, 'package.json')
)
@@ -42,9 +66,12 @@ const checkEveryProvider = async (provider = '') => {
const { dependencies } = JSON.parse(pkgDependencies)
const devParse = Object.entries(dependencies)
const newDevParse = {}
for (const [pkgName] of devParse) {
const lastVersion = await checkPkg(pkgName)
newDevParse[pkgName] = lastVersion
for (const [pkgName, pkgVersion] of devParse) {
if (!stable) newDevParse[pkgName] = await checkPkg(pkgName)
if (stable)
newDevParse[pkgName] = await checkPkgStable(pkgName, pkgVersion)
console.log(newDevParse)
}
return newDevParse
} catch (e) {
@@ -122,9 +149,14 @@ const updateStarters = async (provider = '', updateDev = {}) => {
const main = async () => {
if (PKG_NAME) {
const list = await checkEveryProvider(PKG_NAME)
await updateDependencies(PKG_NAME, list)
await updateStarters(PKG_NAME, list)
const providerName = PKG_NAME ? PKG_NAME.split('=').at(1) : null
const providerStable = PKG_STABLE ? PKG_STABLE.split('=').at(1) : null
const list = await checkEveryProvider(
providerName,
providerStable === 'true'
)
await updateDependencies(providerName, list)
await updateStarters(providerName, list)
}
}

View File

@@ -13,7 +13,7 @@
"@bot-whatsapp/cli": "latest",
"@bot-whatsapp/database": "latest",
"@bot-whatsapp/provider": "latest",
"@adiwajshing/baileys": "5.0.0",
"@adiwajshing/baileys": "4.4.0",
"mime-types": "2.1.35",
"wa-sticker-formatter": "4.3.2"
},

View File

@@ -13,7 +13,7 @@
"@bot-whatsapp/cli": "latest",
"@bot-whatsapp/database": "latest",
"@bot-whatsapp/provider": "latest",
"@adiwajshing/baileys": "5.0.0",
"@adiwajshing/baileys": "4.4.0",
"mime-types": "2.1.35",
"mongodb": "^4.12.1",
"wa-sticker-formatter": "4.3.2"

View File

@@ -13,7 +13,7 @@
"@bot-whatsapp/cli": "latest",
"@bot-whatsapp/database": "latest",
"@bot-whatsapp/provider": "latest",
"@adiwajshing/baileys": "5.0.0",
"@adiwajshing/baileys": "4.4.0",
"mime-types": "2.1.35",
"mysql2": "^2.3.3",
"wa-sticker-formatter": "4.3.2"