1

Im Moment zu implementieren ich eine bitbucket Pipeline, die wie so gut mit einem einzigen Schritt funktioniert:
(options: docker: true)Bitbucket Pipelines verwenden ENV VARS in einem NodeJS Skript S3 Deploy

- docker build --rm -f Dockerfile-deploy ./ -t deploy --build-arg AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID --build-arg AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY 

Dadurch werden die Schlüssel in der Docker-Container, der dann mit einem Bash-Skript und der AWS-CLI zu einem ELB deployen soll, also versuche ich nicht, die env-Vars zu entlarven, aber eb deploy ist sicher und funktioniert.

Beim Versuch, eine Pipeline mit den image: node:latest und den Schritten

- npm i 
- npm run build (Babel transpile) 
- npm run deploy (node script to send to S3) 

Den letzte Schritt, den ich den Knoten Skript ausführen muß Zugriff auf die env haben Vars, dass ich auf die bitbucket Repo-Pipelines Config hinzugefügt habe, stattdessen erhalte ich eine benannte Variable Darstellung dieser variablen:

// NodeJS Config File 
module.exports = { 
    AWS_S3_BUCKET    : process.env.AWS_S3_BUCKET || undefined, 
    AWS_ACCESS_KEY    : process.env.AWS_ACCESS_KEY || undefined, 
    AWS_ACCESS_SECRET   : process.env.AWS_ACCESS_SECRET || undefined, 
} 

-

// NodeJS deploy file... parts 
const aws = { 
    params: { 
    Bucket: config.AWS_S3_BUCKET 
    }, 
    accessKeyId: config.AWS_ACCESS_KEY, 
    secretAccessKey: config.AWS_ACCESS_SECRET, 
    distributionId: config.CLOUDFRONT_DISTRIBUTION_ID, 
    region: "us-east-1" 
} 
console.log('-----START AWS-----') 
console.log(aws) 
console.log('------END AWS------') 

Dann wird die bitbucket Pipelines Echo ist das für die console.logs

-----START AWS----- 
{ params: { Bucket: '$AWS_S3_BUCKET' }, 
    accessKeyId: '$AWS_ACCESS_KEY', 
    secretAccessKey: '$AWS_ACCESS_SECRET', 
    distributionId: '$CLOUDFRONT_DISTRIBUTION_ID', 
    region: 'us-east-1' } 
------END AWS------ 

Irgendwelche Gedanken?

Antwort

2

Nun mein Problem war, dass ich die Variablen aus AWS mit einem nachgestellten Leerzeichen eingefügt ... das ist ein Zeichen, aber sicherlich nicht in der erwarteten geheimen oder Schlüssel-String. Oops

+0

liebe die "opps". –

Verwandte Themen