{"_id":"@ckohler72/gcp-tools","_rev":"9-ee41464923e2e4e4ecbd5015ef2ec42b","name":"@ckohler72/gcp-tools","dist-tags":{"latest":"1.1.6"},"versions":{"1.0.0":{"name":"@ckohler72/gcp-tools","version":"1.0.0","keywords":["gcp","firebase","google-cloud","deployment","secrets","monitoring","cli","devops","cloud-management","firebase-tools","google-cloud-platform","secrets-management","deployment-tracking","pre-deployment-checks"],"author":{"url":"https://github.com/ckohler72","name":"Chris Kohler","email":"chris@example.com"},"license":"MIT","_id":"@ckohler72/gcp-tools@1.0.0","maintainers":[{"name":"ckohler72","email":"chriskohler1972@gmail.com"}],"homepage":"https://github.com/ckohler72/gcp-tools#readme","bugs":{"url":"https://github.com/ckohler72/gcp-tools/issues"},"os":["darwin","linux","win32"],"bin":{"gcp-tools":"dist/cli.js"},"dist":{"shasum":"cbb9ac9fe89543aabc5801a437616ded2322b77a","tarball":"https://registry.npmjs.org/@ckohler72/gcp-tools/-/gcp-tools-1.0.0.tgz","fileCount":21,"integrity":"sha512-5E963NUzY8wU/nxl2yc5PorJWB+nGiUhfTi7Tt9g07oHvyXNHfjFLH5ba+GFaSzCtDjw/b0IxpLt3Q58+Yb8hQ==","signatures":[{"sig":"MEUCIEI4o2GF2qCj/PjDlbFgdzV00HumG/3e8MiF9d6C2L7AAiEA3MjHMFgAxIN2OEeiSEzWk+QUw0APUW2kJnedZa1mRJs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":191021},"main":"dist/cli.js","type":"module","engines":{"node":">=18.0.0"},"scripts":{"dev":"node --watch src/cli.js","lint":"eslint src/","test":"jest","build":"npm run clean && npm run copy-files","clean":"rm -rf dist","start":"node dist/cli.js","format":"prettier --write src/","prepack":"npm run build","lint:fix":"eslint src/ --fix","postpack":"npm run clean","copy-files":"cp -r src dist && cp -r config dist && cp -r scripts dist","postinstall":"node scripts/postinstall.js","publish:major":"npm version major && npm publish --access public","publish:minor":"npm version minor && npm publish --access public","publish:patch":"npm version patch && npm publish --access public","prepublishOnly":"npm run build"},"_npmUser":{"name":"ckohler72","email":"chriskohler1972@gmail.com"},"repository":{"url":"git+https://github.com/ckohler72/gcp-tools.git","type":"git"},"_npmVersion":"11.6.2","description":"Unified CLI for managing Google Cloud Platform and Firebase projects with secrets management, deployment tracking, monitoring, and pre-deployment checks","directories":{},"_nodeVersion":"20.19.5","dependencies":{"ora":"^7.0.1","chalk":"^5.3.0","table":"^6.8.1","yargs":"^17.7.2","inquirer":"^9.2.12","commander":"^11.1.0","node-fetch":"^3.3.2","@google-cloud/pubsub":"^4.0.0","@google-cloud/secret-manager":"^5.0.0"},"preferGlobal":true,"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.55.0","prettier":"^3.1.0","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/gcp-tools_1.0.0_1761065989495_0.5878045129349081","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@ckohler72/gcp-tools","version":"1.0.1","keywords":["gcp","firebase","google-cloud","deployment","secrets","monitoring","cli","devops","cloud-management","firebase-tools","google-cloud-platform","secrets-management","deployment-tracking","pre-deployment-checks"],"author":{"url":"https://github.com/ckohler72","name":"Chris Kohler","email":"chris@example.com"},"license":"MIT","_id":"@ckohler72/gcp-tools@1.0.1","maintainers":[{"name":"ckohler72","email":"chriskohler1972@gmail.com"}],"homepage":"https://github.com/ckohler72/gcp-tools#readme","bugs":{"url":"https://github.com/ckohler72/gcp-tools/issues"},"os":["darwin","linux","win32"],"bin":{"gcp-tools":"dist/cli.js"},"dist":{"shasum":"8b0d60ac2019ecb16929d8c58e83f7c36bb649f7","tarball":"https://registry.npmjs.org/@ckohler72/gcp-tools/-/gcp-tools-1.0.1.tgz","fileCount":21,"integrity":"sha512-ogt01VRuodfaPBC0tTgn55YCr3Jv71gCVR7YqFAMbvaaYfDjKyFdPnTRCC25h5wG+jysBwZCHPN9MYwYUWtN+Q==","signatures":[{"sig":"MEUCIDC/cU+Rxe6k/EV8R10u/1IznxOZMbdQx0pWWuNaB9YzAiEAp+dEr20hLJME3wFQfG77raF0sPATGuB1Vvp+1848XVA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":191045},"main":"dist/cli.js","type":"module","engines":{"node":">=18.0.0"},"scripts":{"dev":"node --watch src/cli.js","lint":"eslint src/","test":"jest","build":"npm run clean && npm run copy-files","clean":"rm -rf dist","start":"node dist/cli.js","format":"prettier --write src/","prepack":"npm run build","lint:fix":"eslint src/ --fix","postpack":"npm run clean","copy-files":"cp -r src dist && cp -r config dist && cp -r scripts dist && chmod +x dist/cli.js","postinstall":"node scripts/postinstall.js","publish:major":"npm version major && npm publish --access public","publish:minor":"npm version minor && npm publish --access public","publish:patch":"npm version patch && npm publish --access public","prepublishOnly":"npm run build"},"_npmUser":{"name":"ckohler72","email":"chriskohler1972@gmail.com"},"repository":{"url":"git+https://github.com/ckohler72/gcp-tools.git","type":"git"},"_npmVersion":"11.6.2","description":"Unified CLI for managing Google Cloud Platform and Firebase projects with secrets management, deployment tracking, monitoring, and pre-deployment checks","directories":{},"_nodeVersion":"20.19.5","dependencies":{"ora":"^7.0.1","chalk":"^5.3.0","table":"^6.8.1","yargs":"^17.7.2","inquirer":"^9.2.12","commander":"^11.1.0","node-fetch":"^3.3.2","@google-cloud/pubsub":"^4.0.0","@google-cloud/secret-manager":"^5.0.0"},"preferGlobal":true,"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.55.0","prettier":"^3.1.0","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/gcp-tools_1.0.1_1761066160031_0.5225489798735894","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@ckohler72/gcp-tools","version":"1.0.2","keywords":["gcp","firebase","google-cloud","deployment","secrets","monitoring","cli","devops","cloud-management","firebase-tools","google-cloud-platform","secrets-management","deployment-tracking","pre-deployment-checks"],"author":{"url":"https://github.com/ckohler72","name":"Chris Kohler","email":"chris@example.com"},"license":"MIT","_id":"@ckohler72/gcp-tools@1.0.2","maintainers":[{"name":"ckohler72","email":"chriskohler1972@gmail.com"}],"homepage":"https://github.com/ckohler72/gcp-tools#readme","bugs":{"url":"https://github.com/ckohler72/gcp-tools/issues"},"os":["darwin","linux","win32"],"bin":{"gcp-tools":"dist/cli.js"},"dist":{"shasum":"eca219b3cda158965bba502c49b60617093c43f8","tarball":"https://registry.npmjs.org/@ckohler72/gcp-tools/-/gcp-tools-1.0.2.tgz","fileCount":21,"integrity":"sha512-vnt8UhwwzmWGdQ/6BsgkVnpc7/EDOryY/3ohhkG6e4G9s1pmIMmRVnGP5AxTBG5U11MCrexPlQKIbQeG4PLfUw==","signatures":[{"sig":"MEUCIAJgvtYyWZoDkb0RavyaAqeNzJRqlXQx6Eo18cMMjM+0AiEA5LRkf6uJbjdNdFGxjFQWwKcKneu61URwal91VHIcEBU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":191043},"main":"dist/cli.js","type":"module","engines":{"node":">=18.0.0"},"scripts":{"dev":"node --watch src/cli.js","lint":"eslint src/","test":"jest","build":"npm run clean && npm run copy-files","clean":"rm -rf dist","start":"node dist/cli.js","format":"prettier --write src/","prepack":"npm run build","lint:fix":"eslint src/ --fix","postpack":"npm run clean","copy-files":"cp -r src dist && cp -r config dist && cp -r scripts dist && chmod +x dist/cli.js","postinstall":"node scripts/postinstall.js","publish:major":"npm version major && npm publish --access public","publish:minor":"npm version minor && npm publish --access public","publish:patch":"npm version patch && npm publish --access public","prepublishOnly":"npm run build"},"_npmUser":{"name":"ckohler72","email":"chriskohler1972@gmail.com"},"repository":{"url":"git+https://github.com/ckohler72/gcp-tools.git","type":"git"},"_npmVersion":"11.6.2","description":"Unified CLI for managing Google Cloud Platform and Firebase projects with secrets management, deployment tracking, monitoring, and pre-deployment checks","directories":{},"_nodeVersion":"20.19.5","dependencies":{"ora":"^7.0.1","chalk":"^5.3.0","table":"^6.8.1","yargs":"^17.7.2","inquirer":"^9.2.12","commander":"^11.1.0","node-fetch":"^3.3.2","@google-cloud/pubsub":"^4.0.0","@google-cloud/secret-manager":"^5.0.0"},"preferGlobal":true,"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.55.0","prettier":"^3.1.0","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/gcp-tools_1.0.2_1761066197194_0.018070751726162015","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@ckohler72/gcp-tools","version":"1.1.0","keywords":["gcp","firebase","google-cloud","deployment","secrets","monitoring","cli","devops","cloud-management","firebase-tools","google-cloud-platform","secrets-management","deployment-tracking","pre-deployment-checks"],"author":{"url":"https://github.com/ckohler72","name":"Chris Kohler","email":"chris@example.com"},"license":"MIT","_id":"@ckohler72/gcp-tools@1.1.0","maintainers":[{"name":"ckohler72","email":"chriskohler1972@gmail.com"}],"homepage":"https://github.com/ckohler72/gcp-tools#readme","bugs":{"url":"https://github.com/ckohler72/gcp-tools/issues"},"os":["darwin","linux","win32"],"bin":{"gcp-tools":"dist/cli.js"},"dist":{"shasum":"ffc1922b556a709e64d6671100bcb8ea33220c38","tarball":"https://registry.npmjs.org/@ckohler72/gcp-tools/-/gcp-tools-1.1.0.tgz","fileCount":22,"integrity":"sha512-WUE+n2OQUPnGjL2htSIGv2eEgc3KKUEZJt2hXL1HRzX6XJ3VnMNLnxKaSzYqv+xhQjXB6GPC85LhyCWf65U6jA==","signatures":[{"sig":"MEUCIHk+ldto2IBTOdQYj14902RZdv9r/LKEUjtKe75ZgmI5AiEAiQvEP+m2HHjeciz9k+moqAW+C+95mqVf7VlbCOlgv30=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":198098},"main":"dist/cli.js","type":"module","engines":{"node":">=18.0.0"},"scripts":{"dev":"node --watch src/cli.js","lint":"eslint src/","test":"jest","build":"npm run clean && npm run copy-files","clean":"rm -rf dist","start":"node dist/cli.js","format":"prettier --write src/","prepack":"npm run build","lint:fix":"eslint src/ --fix","postpack":"npm run clean","copy-files":"cp -r src dist && cp -r config dist && cp -r scripts dist && chmod +x dist/cli.js","postinstall":"node scripts/postinstall.js","publish:major":"npm version major && npm publish --access public","publish:minor":"npm version minor && npm publish --access public","publish:patch":"npm version patch && npm publish --access public","prepublishOnly":"npm run build"},"_npmUser":{"name":"ckohler72","email":"chriskohler1972@gmail.com"},"repository":{"url":"git+https://github.com/ckohler72/gcp-tools.git","type":"git"},"_npmVersion":"11.6.2","description":"Unified CLI for managing Google Cloud Platform and Firebase projects with secrets management, deployment tracking, monitoring, and pre-deployment checks","directories":{},"_nodeVersion":"20.19.5","dependencies":{"ora":"^7.0.1","chalk":"^5.3.0","table":"^6.8.1","yargs":"^17.7.2","inquirer":"^9.2.12","commander":"^11.1.0","node-fetch":"^3.3.2","@google-cloud/pubsub":"^4.0.0","@google-cloud/secret-manager":"^5.0.0"},"preferGlobal":true,"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.55.0","prettier":"^3.1.0","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/gcp-tools_1.1.0_1761066630783_0.07537025657625063","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@ckohler72/gcp-tools","version":"1.1.1","keywords":["gcp","firebase","google-cloud","deployment","secrets","monitoring","cli","devops","cloud-management","firebase-tools","google-cloud-platform","secrets-management","deployment-tracking","pre-deployment-checks"],"author":{"url":"https://github.com/ckohler72","name":"Chris Kohler","email":"chris@example.com"},"license":"MIT","_id":"@ckohler72/gcp-tools@1.1.1","maintainers":[{"name":"ckohler72","email":"chriskohler1972@gmail.com"}],"homepage":"https://github.com/ckohler72/gcp-tools#readme","bugs":{"url":"https://github.com/ckohler72/gcp-tools/issues"},"os":["darwin","linux","win32"],"bin":{"gcp-tools":"dist/cli.js"},"dist":{"shasum":"18804176f6dcb2a7f989f7faee36f8330c16bb17","tarball":"https://registry.npmjs.org/@ckohler72/gcp-tools/-/gcp-tools-1.1.1.tgz","fileCount":23,"integrity":"sha512-HQtAUYO/tKMElxQA2OLYYy3za6WyIO7V8e7meolCX6SBJsGgaDZ4OZyxOQvWokS78kpLzwqqiSfqg7nk/CoQtQ==","signatures":[{"sig":"MEYCIQCjZaqYkApLBGkVOCU6j7uO0S6CmBmXnQGme6NdHJbVzwIhAKyMyAGs+oo2IFFwc6CjxNzr47/a8SjhORooOQoRZILr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":209294},"main":"dist/cli.js","type":"module","engines":{"node":">=18.0.0"},"scripts":{"dev":"node --watch src/cli.js","lint":"eslint src/","test":"jest","build":"npm run clean && npm run copy-files","clean":"rm -rf dist","start":"node dist/cli.js","format":"prettier --write src/","prepack":"npm run build","lint:fix":"eslint src/ --fix","postpack":"npm run clean","copy-files":"cp -r src dist && cp -r config dist && cp -r scripts dist && chmod +x dist/cli.js","postinstall":"node scripts/postinstall.js","publish:major":"npm version major && npm publish --access public","publish:minor":"npm version minor && npm publish --access public","publish:patch":"npm version patch && npm publish --access public","prepublishOnly":"npm run build"},"_npmUser":{"name":"ckohler72","email":"chriskohler1972@gmail.com"},"repository":{"url":"git+https://github.com/ckohler72/gcp-tools.git","type":"git"},"_npmVersion":"11.6.2","description":"Unified CLI for managing Google Cloud Platform and Firebase projects with secrets management, deployment tracking, monitoring, and pre-deployment checks","directories":{},"_nodeVersion":"20.19.5","dependencies":{"ora":"^7.0.1","chalk":"^5.3.0","table":"^6.8.1","yargs":"^17.7.2","inquirer":"^9.2.12","commander":"^11.1.0","node-fetch":"^3.3.2","@google-cloud/pubsub":"^4.0.0","@google-cloud/secret-manager":"^5.0.0"},"preferGlobal":true,"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.55.0","prettier":"^3.1.0","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/gcp-tools_1.1.1_1761066962140_0.8698601525040528","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@ckohler72/gcp-tools","version":"1.1.2","keywords":["gcp","firebase","google-cloud","deployment","secrets","monitoring","cli","devops","cloud-management","firebase-tools","google-cloud-platform","secrets-management","deployment-tracking","pre-deployment-checks"],"author":{"url":"https://github.com/ckohler72","name":"Chris Kohler","email":"chris@example.com"},"license":"MIT","_id":"@ckohler72/gcp-tools@1.1.2","maintainers":[{"name":"ckohler72","email":"chriskohler1972@gmail.com"}],"homepage":"https://github.com/ckohler72/gcp-tools#readme","bugs":{"url":"https://github.com/ckohler72/gcp-tools/issues"},"os":["darwin","linux","win32"],"bin":{"gcp-tools":"dist/cli.js"},"dist":{"shasum":"22abd6e408ccbb3eee6354572ef22c6dee52b07f","tarball":"https://registry.npmjs.org/@ckohler72/gcp-tools/-/gcp-tools-1.1.2.tgz","fileCount":23,"integrity":"sha512-9TdwnACXF2+rEVbF+P9uQVPIB7rx6HosXWgthZa8ddm85pHl0Q2COOWG7n/+opZ3YKKOtCUa6CN8zgFiVtvt2Q==","signatures":[{"sig":"MEUCIQC6u0as/a/z/fhE7Q2A4CdcErIzZ1r490LnRdnB0PoFPwIgXSO/oOl9rRBtKhrm4OxWlnLaESF0s7ai1cnbj13+bzA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":209751},"main":"dist/cli.js","type":"module","engines":{"node":">=18.0.0"},"scripts":{"dev":"node --watch src/cli.js","lint":"eslint src/","test":"jest","build":"npm run clean && npm run copy-files","clean":"rm -rf dist","start":"node dist/cli.js","format":"prettier --write src/","prepack":"npm run build","lint:fix":"eslint src/ --fix","postpack":"npm run clean","copy-files":"cp -r src dist && cp -r config dist && cp -r scripts dist && chmod +x dist/cli.js","postinstall":"node scripts/postinstall.js","publish:major":"npm version major && npm publish --access public","publish:minor":"npm version minor && npm publish --access public","publish:patch":"npm version patch && npm publish --access public","prepublishOnly":"npm run build"},"_npmUser":{"name":"ckohler72","email":"chriskohler1972@gmail.com"},"repository":{"url":"git+https://github.com/ckohler72/gcp-tools.git","type":"git"},"_npmVersion":"11.6.2","description":"Unified CLI for managing Google Cloud Platform and Firebase projects with secrets management, deployment tracking, monitoring, and pre-deployment checks","directories":{},"_nodeVersion":"20.19.5","dependencies":{"ora":"^7.0.1","chalk":"^5.3.0","table":"^6.8.1","yargs":"^17.7.2","inquirer":"^9.2.12","commander":"^11.1.0","node-fetch":"^3.3.2","@google-cloud/pubsub":"^4.0.0","@google-cloud/secret-manager":"^5.0.0"},"preferGlobal":true,"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.55.0","prettier":"^3.1.0","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/gcp-tools_1.1.2_1761067125975_0.03385470168607441","host":"s3://npm-registry-packages-npm-production"}},"1.1.4":{"name":"@ckohler72/gcp-tools","version":"1.1.4","keywords":["gcp","firebase","google-cloud","deployment","secrets","monitoring","cli","devops","cloud-management","firebase-tools","google-cloud-platform","secrets-management","deployment-tracking","pre-deployment-checks"],"author":{"url":"https://github.com/ckohler72","name":"Chris Kohler","email":"chris@example.com"},"license":"MIT","_id":"@ckohler72/gcp-tools@1.1.4","maintainers":[{"name":"ckohler72","email":"chriskohler1972@gmail.com"}],"homepage":"https://github.com/ckohler72/gcp-tools#readme","bugs":{"url":"https://github.com/ckohler72/gcp-tools/issues"},"os":["darwin","linux","win32"],"bin":{"gcp-tools":"dist/cli.js"},"dist":{"shasum":"289bf7aac00632a752b35e422af57900b0c47a7c","tarball":"https://registry.npmjs.org/@ckohler72/gcp-tools/-/gcp-tools-1.1.4.tgz","fileCount":23,"integrity":"sha512-HAbWArN3emAD7wU9j7cJpgHfFUghlXtvvNJ74Y6N3qB58gTq4UOmE1LUmgJtjs0Pe7Bw2YvjNBr1jMC5ecma9w==","signatures":[{"sig":"MEUCICvkqXhvbROIboS0momZYbZfHs8mqvweqHoHDs8JnBoSAiEA5ajRO9D+FbARDsxgNKxtGepyEx0eAHj9ZXodXGzJv/k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":209878},"main":"dist/cli.js","type":"module","engines":{"node":">=18.0.0"},"scripts":{"dev":"node --watch src/cli.js","lint":"eslint src/","test":"jest","build":"npm run clean && npm run copy-files","clean":"rm -rf dist","start":"node dist/cli.js","format":"prettier --write src/","prepack":"npm run build","lint:fix":"eslint src/ --fix","postpack":"npm run clean","copy-files":"cp -r src dist && cp -r config dist && cp -r scripts dist && chmod +x dist/cli.js","postinstall":"node scripts/postinstall.js","publish:major":"npm version major && npm publish --access public","publish:minor":"npm version minor && npm publish --access public","publish:patch":"npm version patch && npm publish --access public","prepublishOnly":"npm run build"},"_npmUser":{"name":"ckohler72","email":"chriskohler1972@gmail.com"},"repository":{"url":"git+https://github.com/ckohler72/gcp-tools.git","type":"git"},"_npmVersion":"11.6.2","description":"Unified CLI for managing Google Cloud Platform and Firebase projects with secrets management, deployment tracking, monitoring, and pre-deployment checks","directories":{},"_nodeVersion":"20.19.5","dependencies":{"ora":"^7.0.1","chalk":"^5.3.0","table":"^6.8.1","yargs":"^17.7.2","inquirer":"^9.2.12","commander":"^11.1.0","node-fetch":"^3.3.2","@google-cloud/pubsub":"^4.0.0","@google-cloud/secret-manager":"^5.0.0"},"preferGlobal":false,"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.55.0","prettier":"^3.1.0","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/gcp-tools_1.1.4_1761068981085_0.4372752702831808","host":"s3://npm-registry-packages-npm-production"}},"1.1.5":{"name":"@ckohler72/gcp-tools","version":"1.1.5","keywords":["gcp","firebase","google-cloud","deployment","secrets","monitoring","cli","devops","cloud-management","firebase-tools","google-cloud-platform","secrets-management","deployment-tracking","pre-deployment-checks"],"author":{"url":"https://github.com/ckohler72","name":"Chris Kohler","email":"chris@example.com"},"license":"MIT","_id":"@ckohler72/gcp-tools@1.1.5","maintainers":[{"name":"ckohler72","email":"chriskohler1972@gmail.com"}],"homepage":"https://github.com/ckohler72/gcp-tools#readme","bugs":{"url":"https://github.com/ckohler72/gcp-tools/issues"},"os":["darwin","linux","win32"],"bin":{"gcp-tools":"dist/cli.js"},"dist":{"shasum":"02ec4ca6861c0f75934fe7610b880ed04f884a50","tarball":"https://registry.npmjs.org/@ckohler72/gcp-tools/-/gcp-tools-1.1.5.tgz","fileCount":23,"integrity":"sha512-vj1niGUxiToyeFCP4qRNaO0kUlCNMsr8jGZdM3iu5c1vOe2vyn1CTJYxOfFjAu8LZMfmmiu9igEs5ELIVjnz2Q==","signatures":[{"sig":"MEUCIQDhWHMFbvaQ2oCVXNIYbTfIh/AK3VjtcBkvGyF2PhmCuwIgUArOMAVlkjLuIdxtCprLMNDqFjIm+I1PCaibY+kQaKc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":209878},"main":"dist/cli.js","type":"module","engines":{"node":">=18.0.0"},"scripts":{"dev":"node --watch src/cli.js","lint":"eslint src/","test":"jest","build":"npm run clean && npm run copy-files","clean":"rm -rf dist","start":"node dist/cli.js","format":"prettier --write src/","prepack":"npm run build","lint:fix":"eslint src/ --fix","postpack":"npm run clean","copy-files":"cp -r src dist && cp -r config dist && cp -r scripts dist && chmod +x dist/cli.js","postinstall":"node scripts/postinstall.js","publish:major":"npm version major && npm publish --access public","publish:minor":"npm version minor && npm publish --access public","publish:patch":"npm version patch && npm publish --access public","prepublishOnly":"npm run build"},"_npmUser":{"name":"ckohler72","email":"chriskohler1972@gmail.com"},"repository":{"url":"git+https://github.com/ckohler72/gcp-tools.git","type":"git"},"_npmVersion":"11.6.2","description":"Unified CLI for managing Google Cloud Platform and Firebase projects with secrets management, deployment tracking, monitoring, and pre-deployment checks","directories":{},"_nodeVersion":"20.19.5","dependencies":{"ora":"^7.0.1","chalk":"^5.3.0","table":"^6.8.1","yargs":"^17.7.2","inquirer":"^9.2.12","commander":"^11.1.0","node-fetch":"^3.3.2","@google-cloud/pubsub":"^4.0.0","@google-cloud/secret-manager":"^5.0.0"},"preferGlobal":false,"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.55.0","prettier":"^3.1.0","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/gcp-tools_1.1.5_1761069354013_0.8555771045983613","host":"s3://npm-registry-packages-npm-production"}},"1.1.6":{"name":"@ckohler72/gcp-tools","version":"1.1.6","description":"Unified CLI for managing Google Cloud Platform and Firebase projects with secrets management, deployment tracking, monitoring, and pre-deployment checks","main":"dist/cli.js","type":"module","bin":{"gcp-tools":"dist/cli.js"},"scripts":{"build":"npm run clean && npm run copy-files","clean":"rm -rf dist","copy-files":"cp -r src dist && cp -r config dist && cp -r scripts dist && chmod +x dist/cli.js","start":"node dist/cli.js","dev":"node --watch src/cli.js","test":"jest","lint":"eslint src/","lint:fix":"eslint src/ --fix","format":"prettier --write src/","postinstall":"node scripts/postinstall.js","prepublishOnly":"npm run build","prepack":"npm run build","postpack":"npm run clean","publish:patch":"npm version patch && npm publish --access public","publish:minor":"npm version minor && npm publish --access public","publish:major":"npm version major && npm publish --access public"},"keywords":["gcp","firebase","google-cloud","deployment","secrets","monitoring","cli","devops","cloud-management","firebase-tools","google-cloud-platform","secrets-management","deployment-tracking","pre-deployment-checks"],"author":{"name":"Chris Kohler","email":"chris@example.com","url":"https://github.com/ckohler72"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/ckohler72/gcp-tools.git"},"bugs":{"url":"https://github.com/ckohler72/gcp-tools/issues"},"homepage":"https://github.com/ckohler72/gcp-tools#readme","dependencies":{"@google-cloud/secret-manager":"^5.0.0","@google-cloud/pubsub":"^4.0.0","inquirer":"^9.2.12","chalk":"^5.3.0","commander":"^11.1.0","node-fetch":"^3.3.2","ora":"^7.0.1","table":"^6.8.1","yargs":"^17.7.2"},"devDependencies":{"jest":"^29.7.0","eslint":"^8.55.0","prettier":"^3.1.0","@types/node":"^20.10.0"},"engines":{"node":">=18.0.0"},"os":["darwin","linux","win32"],"preferGlobal":false,"_id":"@ckohler72/gcp-tools@1.1.6","_nodeVersion":"20.19.5","_npmVersion":"11.6.2","dist":{"integrity":"sha512-H76wKB6WVZIHwjVEE3HaXkDpzprD9mNVC6R6ebGKIvrcggLW0V8l+MXKAFE0QoMHAOKJCzYR7EqOBQydeaTfSg==","shasum":"13bca6f3ac6f5c2ae7725d2755424b8856c99266","tarball":"https://registry.npmjs.org/@ckohler72/gcp-tools/-/gcp-tools-1.1.6.tgz","fileCount":23,"unpackedSize":209937,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCLsowZN6B/NV5h+j5KgtqZ++X35MHx2b3hFdvi5gsBXAIgKk3IAWKlSQIIPUJPo/AwjwSFet7YThw74flHw0+b+kQ="}]},"_npmUser":{"name":"ckohler72","email":"chriskohler1972@gmail.com"},"directories":{},"maintainers":[{"name":"ckohler72","email":"chriskohler1972@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/gcp-tools_1.1.6_1761069496054_0.13928162724104887"},"_hasShrinkwrap":false}},"time":{"created":"2025-10-21T16:59:49.395Z","modified":"2025-10-21T17:58:16.457Z","1.0.0":"2025-10-21T16:59:49.723Z","1.0.1":"2025-10-21T17:02:40.216Z","1.0.2":"2025-10-21T17:03:17.414Z","1.1.0":"2025-10-21T17:10:30.986Z","1.1.1":"2025-10-21T17:16:02.346Z","1.1.2":"2025-10-21T17:18:46.178Z","1.1.4":"2025-10-21T17:49:41.281Z","1.1.5":"2025-10-21T17:55:54.202Z","1.1.6":"2025-10-21T17:58:16.255Z"},"bugs":{"url":"https://github.com/ckohler72/gcp-tools/issues"},"author":{"name":"Chris Kohler","email":"chris@example.com","url":"https://github.com/ckohler72"},"license":"MIT","homepage":"https://github.com/ckohler72/gcp-tools#readme","keywords":["gcp","firebase","google-cloud","deployment","secrets","monitoring","cli","devops","cloud-management","firebase-tools","google-cloud-platform","secrets-management","deployment-tracking","pre-deployment-checks"],"repository":{"type":"git","url":"git+https://github.com/ckohler72/gcp-tools.git"},"description":"Unified CLI for managing Google Cloud Platform and Firebase projects with secrets management, deployment tracking, monitoring, and pre-deployment checks","maintainers":[{"name":"ckohler72","email":"chriskohler1972@gmail.com"}],"readme":"<!-- @format -->\n\n# GCP Tools - Unified Firebase/GCP Management CLI\n\nA comprehensive command-line interface for managing Google Cloud Platform and Firebase projects with unified secrets management, deployment tracking, monitoring, and pre-deployment checks.\n\n## 🚀 What This Tool Does\n\nGCP Tools replaces **50+ individual scripts** with a single, unified CLI that provides:\n\n- 🔐 **Complete Secrets Management** - Create, update, delete, backup, restore, and compare secrets across environments\n- 🚀 **Comprehensive Deployment** - Deploy functions, hosting, API Gateway, Pub/Sub topics, and all services with tracking\n- 📊 **Advanced Monitoring** - Monitor function status, logs, deployment history, and real-time metrics\n- 🔍 **Pre-deployment Validation** - Comprehensive checks for secrets, extensions, collections, feature flags, and migrations\n- 🔑 **Authentication Management** - Unified authentication with project switching and status monitoring\n- 🔗 **GitLab Integration** - Automated commit collection and project management\n- 🔔 **Teams Integration** - Automated notifications for all operations with rich formatting\n- ⚙️ **Centralized Configuration** - Single configuration file for all projects and environments\n- 🛡️ **Security Features** - Secure defaults, encrypted backups, and audit trails\n- 📈 **Progress Tracking** - Real-time progress indicators and comprehensive logging\n- 💾 **Local Storage** - All data stored locally in JSON format for portability and offline access\n\n## 📋 Prerequisites\n\n- **Node.js 20+** (managed via nvm)\n- **pnpm** package manager\n- **Google Cloud SDK** (`gcloud` CLI)\n- **Firebase CLI**\n- **GCP Service Account** credentials\n- **Microsoft Teams Webhook** (optional, for notifications)\n\n## 🛠️ Installation\n\n### Option 1: Install as Project Dependency (Recommended)\n\n```bash\n# Install as a dev dependency in your project\nnpm install --save-dev @ckohler72/gcp-tools\n\n# Or with pnpm\npnpm add -D @ckohler72/gcp-tools\n\n# Or with yarn\nyarn add -D @ckohler72/gcp-tools\n```\n\n### Option 2: Install Globally (Alternative)\n\n```bash\n# Install globally (if you prefer global access)\nnpm install -g @ckohler72/gcp-tools\n```\n\n### Option 3: Install from Source\n\n```bash\n# Clone the repository\ngit clone https://github.com/ckohler72/gcp-tools.git\ncd gcp-tools\n\n# Install dependencies\nnpm install\n\n# Build the package\nnpm run build\n\n# Link globally (optional)\nnpm link\n```\n\n### 3. Configure Projects\n\nAfter installation, run the initialization command in your project directory:\n\n```bash\n# Navigate to your project directory\ncd /path/to/your/project\n\n# Initialize GCP Tools for this project\ngcp-tools init\n```\n\nThis creates a `.gcp-tools.json` file in your project directory with your configuration.\n\n**Note:** Add `.gcp-tools.json` to your `.gitignore` file to keep sensitive configuration out of version control.\n\n```json\n{\n\t\"rm-titan-dev\": {\n\t\t\"projectId\": \"rm-titan-dev\",\n\t\t\"region\": \"us-central1\",\n\t\t\"serviceAccount\": \"/path/to/dev-service-account.json\",\n\t\t\"firebaseAlias\": \"rm-titan-dev\",\n\t\t\"environment\": \"development\"\n\t},\n\t\"rm-titan-prod\": {\n\t\t\"projectId\": \"rm-titan-prod\",\n\t\t\"region\": \"us-central1\",\n\t\t\"serviceAccount\": \"/path/to/prod-service-account.json\",\n\t\t\"firebaseAlias\": \"rm-titan-prod\",\n\t\t\"environment\": \"production\"\n\t},\n\t\"teamsWebhookUrl\": \"https://your-teams-webhook-url\"\n}\n```\n\n### 4. Test Installation\n\n```bash\n# Use the run script (recommended)\ngcp-tools --help\n\n# Or manually activate nvm and run\nsource ~/.nvm/nvm.sh && nvm use 20 && node src/cli.js --help\n```\n\n## 🎯 Quick Start\n\n### First Time Setup\n\n```bash\n# 1. Install as dev dependency in your project\nnpm install --save-dev @ckohler72/gcp-tools\n\n# 2. Initialize configuration\nnpx gcp-tools init\n\n# 3. View your configuration\nnpx gcp-tools setup view\n\n# 4. Add more projects (optional)\nnpx gcp-tools setup add-project\n\n# 5. Validate configuration\nnpx gcp-tools setup validate\n\n# 6. Setup authentication for all projects\nnpx gcp-tools auth setup-all\n\n# 7. Check authentication status\nnpx gcp-tools auth status\n\n# 8. Run a quick secrets comparison\nnpx gcp-tools secrets compare\n```\n\n### Daily Workflow Examples\n\n```bash\n# Deploy to production\nnpx gcp-tools check pre-deploy --environment prod\nnpx gcp-tools deploy all --environment prod --message \"Release v2.0\"\n\n# Manage secrets\nnpx gcp-tools secrets list --project rm-titan-dev\nnpx gcp-tools secrets update --project rm-titan-prod --secret API_KEY --value \"new-value\"\n\n# Monitor deployments\nnpx gcp-tools monitor deployments --project rm-titan-prod --limit 10\n```\n\n## 📚 Complete Command Reference\n\n### 🔧 Initialization Commands\n\n| Command        | Description                            | Example                  |\n| -------------- | -------------------------------------- | ------------------------ |\n| `init`         | Initialize GCP Tools configuration     | `gcp-tools init`         |\n| `init --force` | Force overwrite existing configuration | `gcp-tools init --force` |\n\n### ⚙️ Setup Commands\n\n| Command                     | Description                         | Example                                     |\n| --------------------------- | ----------------------------------- | ------------------------------------------- |\n| `setup view`                | View current configuration          | `gcp-tools setup view`                      |\n| `setup view --project <id>` | View specific project config        | `gcp-tools setup view --project my-project` |\n| `setup add-project`         | Add new project to configuration    | `gcp-tools setup add-project`               |\n| `setup edit-project`        | Edit existing project configuration | `gcp-tools setup edit-project`              |\n| `setup remove-project`      | Remove project from configuration   | `gcp-tools setup remove-project`            |\n| `setup teams`               | Configure Teams webhook URL         | `gcp-tools setup teams`                     |\n| `setup validate`            | Validate current configuration      | `gcp-tools setup validate`                  |\n\n### 🔐 Secrets Management\n\n| Command           | Description                | Example                                                                                  |\n| ----------------- | -------------------------- | ---------------------------------------------------------------------------------------- |\n| `secrets list`    | List all secrets           | `gcp-tools secrets list --project rm-titan-dev`                                          |\n| `secrets compare` | Compare dev/prod secrets   | `gcp-tools secrets compare`                                                              |\n| `secrets update`  | Update secret value/labels | `gcp-tools secrets update --project rm-titan-prod --secret API_KEY --value \"new-value\"`  |\n| `secrets add`     | Add new secret             | `gcp-tools secrets add --project rm-titan-dev --name NEW_SECRET --value \"secret-value\"`  |\n| `secrets delete`  | Delete secret              | `gcp-tools secrets delete --project rm-titan-prod --secret OLD_SECRET`                   |\n| `secrets backup`  | Backup all secrets         | `gcp-tools secrets backup --project rm-titan-dev --output ./backups`                     |\n| `secrets restore` | Restore from backup        | `gcp-tools secrets restore --file ./backups/secrets-backup.json --project rm-titan-prod` |\n\n### 🚀 Deployment Commands\n\n| Command            | Description           | Example                                                                          |\n| ------------------ | --------------------- | -------------------------------------------------------------------------------- |\n| `deploy all`       | Deploy all services   | `gcp-tools deploy all --environment prod --message \"Release v1.2.3\"`             |\n| `deploy functions` | Deploy functions only | `gcp-tools deploy functions --environment dev --functions \"function1,function2\"` |\n| `deploy hosting`   | Deploy hosting only   | `gcp-tools deploy hosting --environment prod --message \"UI updates\"`             |\n| `deploy gateway`   | Deploy API Gateway    | `gcp-tools deploy gateway --environment prod --api-spec ./api/spec.json`         |\n| `deploy pubsub`    | Deploy Pub/Sub topics | `gcp-tools deploy pubsub --project rm-titan-prod --topics \"topic1,topic2\"`       |\n\n### 📊 Monitoring Commands\n\n| Command               | Description                 | Example                                                                |\n| --------------------- | --------------------------- | ---------------------------------------------------------------------- |\n| `monitor functions`   | Monitor function status     | `gcp-tools monitor functions --project rm-titan-dev`                   |\n| `monitor logs`        | Check function logs         | `gcp-tools monitor logs --project rm-titan-prod --function myFunction` |\n| `monitor status`      | Check function status       | `gcp-tools monitor status --project rm-titan-dev`                      |\n| `monitor deployments` | View deployment history     | `gcp-tools monitor deployments --project rm-titan-dev --limit 20`      |\n| `monitor failures`    | Monitor deployment failures | `gcp-tools monitor failures --project rm-titan-dev --days 7`           |\n\n### 🔍 Pre-deployment Checks\n\n| Command               | Description                   | Example                                         |\n| --------------------- | ----------------------------- | ----------------------------------------------- |\n| `check pre-deploy`    | Run all pre-deployment checks | `gcp-tools check pre-deploy --environment prod` |\n| `check secrets`       | Check secrets only            | `gcp-tools check secrets`                       |\n| `check extensions`    | Check extensions only         | `gcp-tools check extensions`                    |\n| `check collections`   | Check collections only        | `gcp-tools check collections`                   |\n| `check feature-flags` | Check feature flags only      | `gcp-tools check feature-flags`                 |\n| `check migrations`    | Check migrations only         | `gcp-tools check migrations`                    |\n\n### 🔑 Authentication Commands\n\n| Command          | Description             | Example                                         |\n| ---------------- | ----------------------- | ----------------------------------------------- |\n| `auth login`     | Authenticate with GCP   | `gcp-tools auth login --project rm-titan-dev`   |\n| `auth reauth`    | Re-authenticate project | `gcp-tools auth reauth --project rm-titan-prod` |\n| `auth status`    | Check auth status       | `gcp-tools auth status`                         |\n| `auth switch`    | Switch project          | `gcp-tools auth switch --project rm-titan-prod` |\n| `auth setup-all` | Setup all projects      | `gcp-tools auth setup-all`                      |\n\n### 🔗 GitLab Integration\n\n| Command           | Description     | Example                                                     |\n| ----------------- | --------------- | ----------------------------------------------------------- |\n| `gitlab commits`  | Collect commits | `gcp-tools gitlab commits --branch main --environment prod` |\n| `gitlab projects` | List projects   | `gcp-tools gitlab projects`                                 |\n| `gitlab test`     | Test connection | `gcp-tools gitlab test`                                     |\n\n### 💾 Storage Management\n\n| Command           | Description                       | Example                                                         |\n| ----------------- | --------------------------------- | --------------------------------------------------------------- |\n| `storage status`  | Show local storage status         | `gcp-tools storage status`                                      |\n| `storage export`  | Export project data               | `gcp-tools storage export --project rm-titan-dev --format json` |\n| `storage compare` | Compare data between environments | `gcp-tools storage compare --type collections`                  |\n| `storage cleanup` | Clean up old data files           | `gcp-tools storage cleanup --days 30`                           |\n| `storage sync`    | Sync data between environments    | `gcp-tools storage sync --type collections --dry-run`           |\n\n## 🔄 Common Workflows\n\n### Complete Deployment Workflow\n\n```bash\n# 1. Check authentication status\ngcp-tools auth status\n\n# 2. Run pre-deployment checks\ngcp-tools check pre-deploy --environment prod\n\n# 3. Collect GitLab commits for tracking\ngcp-tools gitlab commits --branch main --environment prod\n\n# 4. Deploy all services\ngcp-tools deploy all --environment prod --message \"Release v2.0\"\n\n# 5. Monitor deployment status\ngcp-tools monitor deployments --project rm-titan-prod --limit 10\n```\n\n### Secrets Management Workflow\n\n```bash\n# 1. Compare secrets between environments\ngcp-tools secrets compare\n\n# 2. Backup production secrets\ngcp-tools secrets backup --project rm-titan-prod --output ./backups\n\n# 3. Update secrets in development\ngcp-tools secrets update --project rm-titan-dev --secret API_KEY --value \"new-value\"\n\n# 4. Restore secrets to staging\ngcp-tools secrets restore --file ./backups/prod-backup.json --project rm-titan-staging --mode skip\n```\n\n### Authentication Setup Workflow\n\n```bash\n# 1. Setup authentication for all projects\ngcp-tools auth setup-all\n\n# 2. Verify authentication status\ngcp-tools auth status\n\n# 3. Switch to production project\ngcp-tools auth switch --project rm-titan-prod\n\n# 4. Test deployment capabilities\ngcp-tools deploy functions --environment prod --functions \"test-function\"\n```\n\n## 🏗️ Architecture Overview\n\n### Project Structure\n\n```\nsrc/\n├── cli.js                 # Main CLI entry point\n├── core/\n│   ├── config.js          # Configuration management\n│   ├── auth.js            # Authentication management\n│   └── logger.js          # Unified logging\n├── commands/\n│   ├── secrets/           # Secrets management commands\n│   ├── deploy/            # Deployment commands\n│   ├── monitor/           # Monitoring commands\n│   ├── check/             # Pre-deployment check commands\n│   ├── auth/              # Authentication commands\n│   ├── gitlab/            # GitLab integration commands\n│   └── storage/           # Local storage management commands\n└── utils/\n    ├── teams.js           # Teams notification system\n    ├── deploymentTracker.js # Local deployment tracking\n    └── localStorage.js    # Local storage management\n```\n\n### Local Storage System\n\nAll data is stored locally in JSON format for portability and offline access:\n\n```\nlogs/\n├── deployments/          # Deployment tracking data\n├── storage/              # General project data\n├── collections/          # Firestore collections data\n├── rules/                # Firestore/Storage rules\n├── feature-flags/        # Feature flags data\n└── migrations/           # Database migrations data\n```\n\n## 🔄 Migration from Legacy Tools\n\nThis unified CLI replaces **50+ legacy tools**. Here's the migration mapping:\n\n### Secrets Management\n\n- `checkSecrets.mjs` → `gcp-tools secrets compare`\n- `updateSecret.mjs` → `gcp-tools secrets update`\n- `addNewSecret.mjs` → `gcp-tools secrets add`\n- `deleteSecret.mjs` → `gcp-tools secrets delete`\n- `backupSecrets.mjs` → `gcp-tools secrets backup`\n- `restoreSecrets.mjs` → `gcp-tools secrets restore`\n\n### Deployment\n\n- `deployFunctions.mjs` → `gcp-tools deploy functions`\n- `deployGateway.mjs` → `gcp-tools deploy gateway`\n- `deployPubSub.mjs` → `gcp-tools deploy pubsub`\n- `deploy.sh` → `gcp-tools deploy all`\n\n### Monitoring\n\n- `inspectCloudFunctions.mjs` → `gcp-tools monitor functions`\n- `viewFunctionDeployments.mjs` → `gcp-tools monitor deployments`\n- `quick-function-check.sh` → `gcp-tools monitor status`\n\n### Pre-deployment Checks\n\n- `preDeployCheck.mjs` → `gcp-tools check pre-deploy`\n- `checkCollections.mjs` → `gcp-tools check collections`\n- `checkExtensions.mjs` → `gcp-tools check extensions`\n- `checkFeatureFlags.mjs` → `gcp-tools check feature-flags`\n- `checkMigrations.mjs` → `gcp-tools check migrations`\n\n### Authentication\n\n- `auth.sh` → `gcp-tools auth login`\n- `gcloud-reauth.sh` → `gcp-tools auth reauth`\n- `setCreds.js` → Integrated into authentication system\n\n### GitLab Integration\n\n- `collect-gitlab-commits.mjs` → `gcp-tools gitlab commits`\n- `gitlab-commits.mjs` → `gcp-tools gitlab commits`\n\n## 🛠️ Troubleshooting\n\n### Common Issues\n\n**Authentication Errors**\n\n```bash\n# Check authentication status\ngcp-tools auth status\n\n# Re-authenticate if needed\ngcp-tools auth reauth --project rm-titan-dev\n```\n\n**Configuration Issues**\n\n```bash\n# Verify configuration\ngcp-tools --config ./config/projects.json --help\n\n# Check if projects are configured\ncat config/projects.json\n```\n\n**Teams Notifications Not Working**\n\n```bash\n# Test Teams connection\ngcp-tools gitlab test  # This will also test Teams integration\n\n# Check Teams webhook URL in config\ngrep teamsWebhookUrl config/projects.json\n```\n\n**Deployment Failures**\n\n```bash\n# Check function status\ngcp-tools monitor status --project rm-titan-dev\n\n# View function logs\ngcp-tools monitor logs --project rm-titan-dev --function function-name\n\n# Run pre-deployment checks\ngcp-tools check pre-deploy --environment dev\n```\n\n### Getting Help\n\n- Run `gcp-tools <command> --help` for specific command help\n- Check the logs directory for detailed operation logs\n- Use `--verbose` flag for detailed debugging information\n- Review Teams notifications for operation status\n\n## 🎯 Key Benefits\n\n### **1. Unified Interface**\n\n- **Single CLI**: One tool instead of 50+ individual scripts\n- **Consistent Commands**: Standardized syntax and options across all operations\n- **Integrated Help**: Comprehensive help system with examples\n\n### **2. Enhanced Reliability**\n\n- **Error Handling**: Robust error management with detailed error messages\n- **Progress Feedback**: Real-time progress indicators for long operations\n- **Validation**: Comprehensive input validation and configuration checking\n\n### **3. Better User Experience**\n\n- **Interactive Prompts**: Smart defaults and guided workflows\n- **Teams Notifications**: Automatic notifications for all operations\n- **Detailed Logging**: Multi-level logging with timestamps and context\n\n### **4. Improved Security**\n\n- **Centralized Auth**: Unified authentication management\n- **Secure Defaults**: Safe default behaviors and confirmation prompts\n- **Audit Trail**: Complete operation tracking and logging\n\n### **5. Enhanced Maintainability**\n\n- **Modular Architecture**: Clean separation of concerns\n- **Consistent Patterns**: Standardized code patterns across all commands\n- **Comprehensive Testing**: Built-in validation and error handling\n\n### **6. Local Storage Benefits**\n\n- **Portability**: No external database dependencies\n- **Performance**: Faster data access (local files vs network)\n- **Transparency**: Data stored in human-readable JSON format\n- **Offline Support**: Works without internet connection\n\n## 📈 Development\n\n### Adding New Commands\n\n1. Create command file in appropriate directory under `src/commands/`\n2. Export command using Commander.js\n3. Import and add to main CLI in `src/cli.js`\n\n### Testing\n\n```bash\n# Test individual commands\ngcp-tools secrets list --help\ngcp-tools deploy functions --help\n\n# Test with verbose logging\ngcp-tools secrets compare --verbose\n```\n\n### Linting\n\n```bash\n# Run linting\npnpm run lint\n\n# Fix linting issues\npnpm run lint:fix\n```\n\n## 📝 License\n\nMIT License - see LICENSE file for details\n\n---\n\n## 🎉 Summary\n\nThe unified GCP tools provide a comprehensive, maintainable solution for managing Firebase/GCP projects. With **50+ legacy tools** successfully migrated into **7 command categories** with **30+ individual commands**, the new architecture offers:\n\n- **Better Developer Experience**: Single CLI with consistent interface\n- **Enhanced Reliability**: Robust error handling and validation\n- **Improved Security**: Centralized authentication and secure defaults\n- **Complete Integration**: Teams notifications and GitLab integration\n- **Future-Proof Architecture**: Modular design for easy extension\n- **Local Storage**: Portable, offline-capable data management\n\nThe unified GCP tools are production-ready and will significantly improve your Firebase/GCP project management workflow!\n","readmeFilename":"README.md"}