open-wa / wa-automate-nodejs

💬 🤖 The most reliable tool for chatbots with advanced features. Be sure to 🌟 this repository for updates!
https://docs.openwa.dev/
Other
3.08k stars 592 forks source link

EASY API: Attempt to grab session data from s3 bucket if s3 auth creds are set in process.env #1993

Closed smashah closed 2 years ago

smashah commented 2 years ago

@github-actions run

⚡ Release! ⚡ ```js (async () => { function exec(cmd) { console.log(execSync(cmd).toString()); } // Config const gitUserEmail = "github-actions[bot]@users.noreply.github.com"; const gitUserName = "github-actions[bot]"; exec(`echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" > .npmrc`); exec(`git config --global user.email "${gitUserEmail}"`); exec(`git config --global user.name "${gitUserName}"`); exec(`npm i -D`); exec(`npm run release-ci minor`); //comment on the issue var result = execSync(`npx auto-changelog -o ./tempchangelog.txt --commit-limit false --template ./compact-keepachangelog.hbs --stdout`).toString(); await postComment(result); //create changelog image exec(`npm run release-image`); exec(`git commit -a -m 'updated release-image'`); exec(`git push --force`); })(); ```
smashah commented 2 years ago

Changelog

🚀 Release 4.15.0 (2021-08-17)

smashah commented 2 years ago

How to make the sessionDataBucketAuth string:

console.log(Buffer.from(JSON.stringify({
    "provider": "AWS",
    "region": 'us-east-2',
    "bucket": "my-super-secure-session-data-bucket",
    "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "secretAccessKey": "AKIAIOSFODNN7EXAMPLE"
})).toString('base64'))

which should give you this output:

eyJwcm92aWRlciI6IkFXUyIsInJlZ2lvbiI6InVzLWVhc3QtMiIsImJ1Y2tldCI6Im15LXN1cGVyLXNlY3VyZS1zZXNzaW9uLWRhdGEtYnVja2V0IiwiYWNjZXNzS2V5SWQiOiJBS0lBSU9TRk9ETk43RVhBTVBMRSIsInNlY3JldEFjY2Vzc0tleSI6IkFLSUFJT1NGT0ROTjdFWEFNUExFIn0=

Then set it in your config:

create({
...
"sessionDataBucketAuth" : "eyJwcm92aWRlciI6IkFXUyIsInJlZ2lvbiI6InVzLWVhc3QtMiIsImJ1Y2tldCI6Im15LXN1cGVyLXNlY3VyZS1zZXNzaW9uLWRhdGEtYnVja2V0IiwiYWNjZXNzS2V5SWQiOiJBS0lBSU9TRk9ETk43RVhBTVBMRSIsInNlY3JldEFjY2Vzc0tleSI6IkFLSUFJT1NGT0ROTjdFWEFNUExFIn0="
})

or if you're using the CLI, use the flag

> npx @open-wa/wa-automate@latest --session-data-bucket-auth="eyJwcm92aWRlciI6IkFXUyIsInJlZ2lvbiI6InVzLWVhc3QtMiIsImJ1Y2tldCI6Im15LXN1cGVyLXNlY3VyZS1zZXNzaW9uLWRhdGEtYnVja2V0IiwiYWNjZXNzS2V5SWQiOiJBS0lBSU9TRk9ETk43RVhBTVBMRSIsInNlY3JldEFjY2Vzc0tleSI6IkFLSUFJT1NGT0ROTjdFWEFNUExFIn0="

or as an environment variable:

> WA_SESSION_DATA_BUCKET_AUTH="eyJwcm92aWRlciI6IkFXUyIsInJlZ2lvbiI6InVzLWVhc3QtMiIsImJ1Y2tldCI6Im15LXN1cGVyLXNlY3VyZS1zZXNzaW9uLWRhdGEtYnVja2V0IiwiYWNjZXNzS2V5SWQiOiJBS0lBSU9TRk9ETk43RVhBTVBMRSIsInNlY3JldEFjY2Vzc0tleSI6IkFLSUFJT1NGT0ROTjdFWEFNUExFIn0=" npx @open-wa/wa-automate@latest