@trieungoctam/vibekit 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +85 -0
- package/agents/debugger.md +158 -0
- package/agents/docs-manager.md +220 -0
- package/agents/planner.md +129 -0
- package/agents/researcher.md +58 -0
- package/agents/reviewer.md +152 -0
- package/agents/tester.md +126 -0
- package/bin/vibekit.js +18 -0
- package/hooks/lib/ck-config-utils.cjs +831 -0
- package/hooks/lib/colors.cjs +95 -0
- package/hooks/lib/config-counter.cjs +103 -0
- package/hooks/lib/context-builder.cjs +616 -0
- package/hooks/lib/git-info-cache.cjs +143 -0
- package/hooks/lib/hook-logger.cjs +92 -0
- package/hooks/lib/privacy-checker.cjs +297 -0
- package/hooks/lib/project-detector.cjs +474 -0
- package/hooks/lib/scout-checker.cjs +263 -0
- package/hooks/lib/transcript-parser.cjs +181 -0
- package/hooks/post-edit-simplify-reminder.cjs +156 -0
- package/hooks/privacy-block.cjs +166 -0
- package/hooks/scout-block.cjs +147 -0
- package/hooks/session-init.cjs +360 -0
- package/package.json +41 -0
- package/rules/development-rules.md +52 -0
- package/rules/documentation-management.md +121 -0
- package/rules/orchestration-protocol.md +43 -0
- package/rules/primary-workflow.md +57 -0
- package/rules/team-coordination-rules.md +90 -0
- package/skills/ai/agent-browser/SKILL.md +294 -0
- package/skills/ai/agent-browser/references/.gitkeep +0 -0
- package/skills/ai/agent-browser/references/agent-browser-vs-chrome-devtools.md +112 -0
- package/skills/ai/agent-browser/references/browserbase-cloud-setup.md +161 -0
- package/skills/ai/ai-artist/SKILL.md +122 -0
- package/skills/ai/ai-artist/data/awesome-prompts.csv +3592 -0
- package/skills/ai/ai-artist/data/lighting.csv +19 -0
- package/skills/ai/ai-artist/data/nano-banana-templates.csv +17 -0
- package/skills/ai/ai-artist/data/platforms.csv +11 -0
- package/skills/ai/ai-artist/data/styles.csv +26 -0
- package/skills/ai/ai-artist/data/techniques.csv +19 -0
- package/skills/ai/ai-artist/data/use-cases.csv +16 -0
- package/skills/ai/ai-artist/references/advanced-techniques.md +184 -0
- package/skills/ai/ai-artist/references/awesome-nano-banana-pro-prompts.md +8575 -0
- package/skills/ai/ai-artist/references/domain-code.md +66 -0
- package/skills/ai/ai-artist/references/domain-data.md +72 -0
- package/skills/ai/ai-artist/references/domain-marketing.md +66 -0
- package/skills/ai/ai-artist/references/domain-patterns.md +33 -0
- package/skills/ai/ai-artist/references/domain-writing.md +68 -0
- package/skills/ai/ai-artist/references/image-prompting.md +141 -0
- package/skills/ai/ai-artist/references/llm-prompting.md +165 -0
- package/skills/ai/ai-artist/references/nano-banana.md +136 -0
- package/skills/ai/ai-artist/references/reasoning-techniques.md +201 -0
- package/skills/ai/ai-artist/references/validation-workflow.md +117 -0
- package/skills/ai/ai-artist/scripts/core.py +197 -0
- package/skills/ai/ai-artist/scripts/extract_prompts.py +102 -0
- package/skills/ai/ai-artist/scripts/generate.py +370 -0
- package/skills/ai/ai-artist/scripts/search.py +147 -0
- package/skills/ai/ai-multimodal/.env.example +204 -0
- package/skills/ai/ai-multimodal/SKILL.md +110 -0
- package/skills/ai/ai-multimodal/references/audio-processing.md +387 -0
- package/skills/ai/ai-multimodal/references/image-generation.md +939 -0
- package/skills/ai/ai-multimodal/references/music-generation.md +311 -0
- package/skills/ai/ai-multimodal/references/video-analysis.md +515 -0
- package/skills/ai/ai-multimodal/references/video-generation.md +457 -0
- package/skills/ai/ai-multimodal/references/vision-understanding.md +492 -0
- package/skills/ai/ai-multimodal/scripts/.coverage +0 -0
- package/skills/ai/ai-multimodal/scripts/check_setup.py +315 -0
- package/skills/ai/ai-multimodal/scripts/document_converter.py +395 -0
- package/skills/ai/ai-multimodal/scripts/gemini_batch_process.py +1185 -0
- package/skills/ai/ai-multimodal/scripts/media_optimizer.py +506 -0
- package/skills/ai/ai-multimodal/scripts/requirements.txt +26 -0
- package/skills/ai/ai-multimodal/scripts/tests/.coverage +0 -0
- package/skills/ai/ai-multimodal/scripts/tests/requirements.txt +20 -0
- package/skills/ai/ai-multimodal/scripts/tests/test_document_converter.py +74 -0
- package/skills/ai/ai-multimodal/scripts/tests/test_gemini_batch_process.py +362 -0
- package/skills/ai/ai-multimodal/scripts/tests/test_media_optimizer.py +373 -0
- package/skills/ai/mcp-management/README.md +219 -0
- package/skills/ai/mcp-management/SKILL.md +210 -0
- package/skills/ai/mcp-management/assets/tools.json +3146 -0
- package/skills/ai/mcp-management/references/configuration.md +114 -0
- package/skills/ai/mcp-management/references/gemini-cli-integration.md +221 -0
- package/skills/ai/mcp-management/references/mcp-protocol.md +116 -0
- package/skills/ai/mcp-management/scripts/.env.example +10 -0
- package/skills/ai/mcp-management/scripts/cli.ts +195 -0
- package/skills/ai/mcp-management/scripts/dist/analyze-tools.js +70 -0
- package/skills/ai/mcp-management/scripts/dist/cli.js +160 -0
- package/skills/ai/mcp-management/scripts/dist/mcp-client.js +183 -0
- package/skills/ai/mcp-management/scripts/mcp-client.ts +230 -0
- package/skills/ai/mcp-management/scripts/package.json +20 -0
- package/skills/ai/mcp-management/scripts/tsconfig.json +15 -0
- package/skills/core/brainstorm/SKILL.md +164 -0
- package/skills/core/brainstorm/scripts/frame-template.html +214 -0
- package/skills/core/brainstorm/scripts/helper.js +88 -0
- package/skills/core/brainstorm/scripts/server.cjs +338 -0
- package/skills/core/brainstorm/scripts/start-server.sh +153 -0
- package/skills/core/brainstorm/scripts/stop-server.sh +55 -0
- package/skills/core/brainstorm/spec-document-reviewer-prompt.md +49 -0
- package/skills/core/brainstorm/visual-companion.md +286 -0
- package/skills/core/code-review/SKILL.md +147 -0
- package/skills/core/code-review/references/code-review-reception.md +113 -0
- package/skills/core/code-review/references/codebase-scan-workflow.md +29 -0
- package/skills/core/code-review/references/edge-case-scouting.md +119 -0
- package/skills/core/code-review/references/parallel-review-workflow.md +69 -0
- package/skills/core/code-review/references/requesting-code-review.md +116 -0
- package/skills/core/code-review/references/task-management-reviews.md +140 -0
- package/skills/core/code-review/references/verification-before-completion.md +139 -0
- package/skills/core/cook/README.md +86 -0
- package/skills/core/cook/SKILL.md +113 -0
- package/skills/core/cook/references/intent-detection.md +101 -0
- package/skills/core/cook/references/review-cycle.md +75 -0
- package/skills/core/cook/references/subagent-patterns.md +75 -0
- package/skills/core/cook/references/workflow-steps.md +172 -0
- package/skills/core/debug/SKILL.md +121 -0
- package/skills/core/debug/references/defense-in-depth.md +124 -0
- package/skills/core/debug/references/frontend-verification.md +103 -0
- package/skills/core/debug/references/investigation-methodology.md +101 -0
- package/skills/core/debug/references/log-and-ci-analysis.md +97 -0
- package/skills/core/debug/references/performance-diagnostics.md +113 -0
- package/skills/core/debug/references/reporting-standards.md +122 -0
- package/skills/core/debug/references/root-cause-tracing.md +122 -0
- package/skills/core/debug/references/systematic-debugging.md +102 -0
- package/skills/core/debug/references/task-management-debugging.md +155 -0
- package/skills/core/debug/references/verification.md +123 -0
- package/skills/core/debug/scripts/find-polluter.sh +63 -0
- package/skills/core/debug/scripts/find-polluter.test.md +102 -0
- package/skills/core/execute/SKILL.md +70 -0
- package/skills/core/fix/SKILL.md +111 -0
- package/skills/core/fix/references/complexity-assessment.md +72 -0
- package/skills/core/fix/references/mode-selection.md +46 -0
- package/skills/core/fix/references/parallel-exploration.md +100 -0
- package/skills/core/fix/references/review-cycle.md +77 -0
- package/skills/core/fix/references/skill-activation-matrix.md +78 -0
- package/skills/core/fix/references/task-orchestration.md +103 -0
- package/skills/core/fix/references/workflow-ci.md +28 -0
- package/skills/core/fix/references/workflow-deep.md +122 -0
- package/skills/core/fix/references/workflow-logs.md +72 -0
- package/skills/core/fix/references/workflow-quick.md +59 -0
- package/skills/core/fix/references/workflow-standard.md +111 -0
- package/skills/core/fix/references/workflow-test.md +75 -0
- package/skills/core/fix/references/workflow-types.md +33 -0
- package/skills/core/fix/references/workflow-ui.md +75 -0
- package/skills/core/plan/SKILL.md +145 -0
- package/skills/core/plan/plan-document-reviewer-prompt.md +49 -0
- package/skills/core/subagent-dev/SKILL.md +277 -0
- package/skills/core/subagent-dev/code-quality-reviewer-prompt.md +26 -0
- package/skills/core/subagent-dev/implementer-prompt.md +113 -0
- package/skills/core/subagent-dev/spec-reviewer-prompt.md +61 -0
- package/skills/core/tdd/SKILL.md +371 -0
- package/skills/core/tdd/testing-anti-patterns.md +299 -0
- package/skills/core/test/SKILL.md +109 -0
- package/skills/core/test/references/report-format.md +58 -0
- package/skills/core/test/references/test-execution-workflow.md +103 -0
- package/skills/core/test/references/ui-testing-workflow.md +65 -0
- package/skills/core/verify/SKILL.md +139 -0
- package/skills/dev/backend-dev/SKILL.md +96 -0
- package/skills/dev/backend-dev/references/backend-api-design.md +495 -0
- package/skills/dev/backend-dev/references/backend-architecture.md +454 -0
- package/skills/dev/backend-dev/references/backend-authentication.md +338 -0
- package/skills/dev/backend-dev/references/backend-code-quality.md +659 -0
- package/skills/dev/backend-dev/references/backend-debugging.md +904 -0
- package/skills/dev/backend-dev/references/backend-devops.md +494 -0
- package/skills/dev/backend-dev/references/backend-mindset.md +387 -0
- package/skills/dev/backend-dev/references/backend-performance.md +397 -0
- package/skills/dev/backend-dev/references/backend-security.md +290 -0
- package/skills/dev/backend-dev/references/backend-technologies.md +256 -0
- package/skills/dev/backend-dev/references/backend-testing.md +429 -0
- package/skills/dev/context-engineering/SKILL.md +108 -0
- package/skills/dev/context-engineering/references/context-compression.md +84 -0
- package/skills/dev/context-engineering/references/context-degradation.md +93 -0
- package/skills/dev/context-engineering/references/context-fundamentals.md +75 -0
- package/skills/dev/context-engineering/references/context-optimization.md +82 -0
- package/skills/dev/context-engineering/references/evaluation.md +89 -0
- package/skills/dev/context-engineering/references/memory-systems.md +88 -0
- package/skills/dev/context-engineering/references/multi-agent-patterns.md +90 -0
- package/skills/dev/context-engineering/references/project-development.md +97 -0
- package/skills/dev/context-engineering/references/runtime-awareness.md +202 -0
- package/skills/dev/context-engineering/references/tool-design.md +86 -0
- package/skills/dev/context-engineering/scripts/compression_evaluator.py +349 -0
- package/skills/dev/context-engineering/scripts/context_analyzer.py +317 -0
- package/skills/dev/context-engineering/scripts/tests/test_edge_cases.py +246 -0
- package/skills/dev/databases/SKILL.md +84 -0
- package/skills/dev/databases/analytics.md +198 -0
- package/skills/dev/databases/db-design.md +188 -0
- package/skills/dev/databases/incremental-etl.md +213 -0
- package/skills/dev/databases/references/mongodb-aggregation.md +447 -0
- package/skills/dev/databases/references/mongodb-atlas.md +465 -0
- package/skills/dev/databases/references/mongodb-crud.md +408 -0
- package/skills/dev/databases/references/mongodb-indexing.md +442 -0
- package/skills/dev/databases/references/postgresql-administration.md +594 -0
- package/skills/dev/databases/references/postgresql-performance.md +527 -0
- package/skills/dev/databases/references/postgresql-psql-cli.md +467 -0
- package/skills/dev/databases/references/postgresql-queries.md +475 -0
- package/skills/dev/databases/scripts/.coverage +0 -0
- package/skills/dev/databases/scripts/db_backup.py +502 -0
- package/skills/dev/databases/scripts/db_migrate.py +426 -0
- package/skills/dev/databases/scripts/db_performance_check.py +457 -0
- package/skills/dev/databases/scripts/requirements.txt +20 -0
- package/skills/dev/databases/scripts/tests/coverage-db.json +1 -0
- package/skills/dev/databases/scripts/tests/requirements.txt +4 -0
- package/skills/dev/databases/scripts/tests/test_db_backup.py +340 -0
- package/skills/dev/databases/scripts/tests/test_db_migrate.py +277 -0
- package/skills/dev/databases/scripts/tests/test_db_performance_check.py +370 -0
- package/skills/dev/databases/stacks/bigquery.md +231 -0
- package/skills/dev/databases/stacks/d1_cloudflare.md +137 -0
- package/skills/dev/databases/stacks/mysql.md +216 -0
- package/skills/dev/databases/stacks/postgres.md +235 -0
- package/skills/dev/databases/stacks/sqlite.md +244 -0
- package/skills/dev/databases/transactional.md +176 -0
- package/skills/dev/devops/.env.example +76 -0
- package/skills/dev/devops/SKILL.md +97 -0
- package/skills/dev/devops/references/browser-rendering.md +305 -0
- package/skills/dev/devops/references/cloudflare-d1-kv.md +123 -0
- package/skills/dev/devops/references/cloudflare-platform.md +271 -0
- package/skills/dev/devops/references/cloudflare-r2-storage.md +280 -0
- package/skills/dev/devops/references/cloudflare-workers-advanced.md +312 -0
- package/skills/dev/devops/references/cloudflare-workers-apis.md +309 -0
- package/skills/dev/devops/references/cloudflare-workers-basics.md +418 -0
- package/skills/dev/devops/references/docker-basics.md +297 -0
- package/skills/dev/devops/references/docker-compose.md +292 -0
- package/skills/dev/devops/references/gcloud-platform.md +297 -0
- package/skills/dev/devops/references/gcloud-services.md +304 -0
- package/skills/dev/devops/references/kubernetes-basics.md +99 -0
- package/skills/dev/devops/references/kubernetes-helm-advanced.md +75 -0
- package/skills/dev/devops/references/kubernetes-helm.md +81 -0
- package/skills/dev/devops/references/kubernetes-kubectl.md +74 -0
- package/skills/dev/devops/references/kubernetes-security-advanced.md +98 -0
- package/skills/dev/devops/references/kubernetes-security.md +95 -0
- package/skills/dev/devops/references/kubernetes-troubleshooting-advanced.md +74 -0
- package/skills/dev/devops/references/kubernetes-troubleshooting.md +49 -0
- package/skills/dev/devops/references/kubernetes-workflows-advanced.md +75 -0
- package/skills/dev/devops/references/kubernetes-workflows.md +78 -0
- package/skills/dev/devops/scripts/cloudflare_deploy.py +269 -0
- package/skills/dev/devops/scripts/docker_optimize.py +332 -0
- package/skills/dev/devops/scripts/requirements.txt +20 -0
- package/skills/dev/devops/scripts/tests/requirements.txt +3 -0
- package/skills/dev/devops/scripts/tests/test_cloudflare_deploy.py +285 -0
- package/skills/dev/devops/scripts/tests/test_docker_optimize.py +436 -0
- package/skills/dev/frontend-design/SKILL.md +78 -0
- package/skills/dev/frontend-design/references/ai-multimodal-overview.md +165 -0
- package/skills/dev/frontend-design/references/analysis-best-practices.md +80 -0
- package/skills/dev/frontend-design/references/analysis-prompts.md +141 -0
- package/skills/dev/frontend-design/references/analysis-techniques.md +118 -0
- package/skills/dev/frontend-design/references/animejs.md +396 -0
- package/skills/dev/frontend-design/references/asset-generation.md +337 -0
- package/skills/dev/frontend-design/references/design-extraction-overview.md +71 -0
- package/skills/dev/frontend-design/references/extraction-best-practices.md +141 -0
- package/skills/dev/frontend-design/references/extraction-output-templates.md +162 -0
- package/skills/dev/frontend-design/references/extraction-prompts.md +127 -0
- package/skills/dev/frontend-design/references/technical-accessibility.md +119 -0
- package/skills/dev/frontend-design/references/technical-best-practices.md +97 -0
- package/skills/dev/frontend-design/references/technical-optimization.md +44 -0
- package/skills/dev/frontend-design/references/technical-overview.md +90 -0
- package/skills/dev/frontend-design/references/technical-workflows.md +150 -0
- package/skills/dev/frontend-design/references/visual-analysis-overview.md +95 -0
- package/skills/dev/frontend-design/references/workflow-3d.md +102 -0
- package/skills/dev/frontend-design/references/workflow-describe.md +87 -0
- package/skills/dev/frontend-design/references/workflow-immersive.md +87 -0
- package/skills/dev/frontend-design/references/workflow-quick.md +57 -0
- package/skills/dev/frontend-design/references/workflow-screenshot.md +63 -0
- package/skills/dev/frontend-design/references/workflow-video.md +74 -0
- package/skills/dev/frontend-dev/SKILL.md +400 -0
- package/skills/dev/frontend-dev/resources/common-patterns.md +331 -0
- package/skills/dev/frontend-dev/resources/complete-examples.md +872 -0
- package/skills/dev/frontend-dev/resources/component-patterns.md +502 -0
- package/skills/dev/frontend-dev/resources/data-fetching.md +767 -0
- package/skills/dev/frontend-dev/resources/file-organization.md +502 -0
- package/skills/dev/frontend-dev/resources/loading-and-error-states.md +501 -0
- package/skills/dev/frontend-dev/resources/performance.md +406 -0
- package/skills/dev/frontend-dev/resources/routing-guide.md +364 -0
- package/skills/dev/frontend-dev/resources/styling-guide.md +428 -0
- package/skills/dev/frontend-dev/resources/typescript-standards.md +418 -0
- package/skills/dev/git/SKILL.md +114 -0
- package/skills/dev/git/references/branch-management.md +88 -0
- package/skills/dev/git/references/commit-standards.md +46 -0
- package/skills/dev/git/references/gh-cli-guide.md +109 -0
- package/skills/dev/git/references/safety-protocols.md +69 -0
- package/skills/dev/git/references/workflow-commit.md +58 -0
- package/skills/dev/git/references/workflow-merge.md +48 -0
- package/skills/dev/git/references/workflow-pr.md +58 -0
- package/skills/dev/git/references/workflow-push.md +52 -0
- package/skills/dev/git-worktree/SKILL.md +218 -0
- package/skills/utils/ask/SKILL.md +58 -0
- package/skills/utils/bootstrap/SKILL.md +101 -0
- package/skills/utils/bootstrap/references/shared-phases.md +59 -0
- package/skills/utils/bootstrap/references/workflow-auto.md +52 -0
- package/skills/utils/bootstrap/references/workflow-fast.md +50 -0
- package/skills/utils/bootstrap/references/workflow-full.md +60 -0
- package/skills/utils/bootstrap/references/workflow-parallel.md +59 -0
- package/skills/utils/ck-help/SKILL.md +102 -0
- package/skills/utils/ck-help/scripts/ck-help.py +1321 -0
- package/skills/utils/ck-help/scripts/commands_data.yaml +3 -0
- package/skills/utils/ck-help/scripts/skills_data.yaml +593 -0
- package/skills/utils/copywriting/SKILL.md +94 -0
- package/skills/utils/copywriting/references/copy-formulas.md +150 -0
- package/skills/utils/copywriting/references/cta-patterns.md +168 -0
- package/skills/utils/copywriting/references/email-copy.md +193 -0
- package/skills/utils/copywriting/references/headline-templates.md +140 -0
- package/skills/utils/copywriting/references/landing-page-copy.md +175 -0
- package/skills/utils/copywriting/references/power-words.md +189 -0
- package/skills/utils/copywriting/references/social-media-copy.md +222 -0
- package/skills/utils/copywriting/references/workflow-cro.md +83 -0
- package/skills/utils/copywriting/references/workflow-enhance.md +32 -0
- package/skills/utils/copywriting/references/workflow-fast.md +29 -0
- package/skills/utils/copywriting/references/workflow-good.md +39 -0
- package/skills/utils/copywriting/references/writing-styles.md +247 -0
- package/skills/utils/copywriting/scripts/extract-writing-styles.py +308 -0
- package/skills/utils/copywriting/templates/copy-brief.md +49 -0
- package/skills/utils/docs/SKILL.md +55 -0
- package/skills/utils/docs/references/init-workflow.md +32 -0
- package/skills/utils/docs/references/summarize-workflow.md +18 -0
- package/skills/utils/docs/references/update-workflow.md +59 -0
- package/skills/utils/journal/SKILL.md +11 -0
- package/skills/utils/kanban/SKILL.md +99 -0
- package/skills/utils/preview/SKILL.md +75 -0
- package/skills/utils/preview/references/generation-modes.md +95 -0
- package/skills/utils/preview/references/view-mode.md +42 -0
- package/skills/utils/repomix/SKILL.md +248 -0
- package/skills/utils/repomix/references/configuration.md +211 -0
- package/skills/utils/repomix/references/usage-patterns.md +232 -0
- package/skills/utils/repomix/scripts/.coverage +0 -0
- package/skills/utils/repomix/scripts/README.md +179 -0
- package/skills/utils/repomix/scripts/repomix_batch.py +455 -0
- package/skills/utils/repomix/scripts/repos.example.json +15 -0
- package/skills/utils/repomix/scripts/requirements.txt +15 -0
- package/skills/utils/repomix/scripts/tests/test_repomix_batch.py +531 -0
- package/skills/utils/research/SKILL.md +171 -0
- package/skills/utils/scout/SKILL.md +89 -0
- package/skills/utils/scout/references/external-scouting.md +140 -0
- package/skills/utils/scout/references/internal-scouting.md +119 -0
- package/skills/utils/scout/references/task-management-scouting.md +125 -0
- package/skills/utils/sequential-thinking/.env.example +8 -0
- package/skills/utils/sequential-thinking/README.md +183 -0
- package/skills/utils/sequential-thinking/SKILL.md +95 -0
- package/skills/utils/sequential-thinking/package.json +31 -0
- package/skills/utils/sequential-thinking/references/advanced-strategies.md +79 -0
- package/skills/utils/sequential-thinking/references/advanced-techniques.md +76 -0
- package/skills/utils/sequential-thinking/references/core-patterns.md +95 -0
- package/skills/utils/sequential-thinking/references/examples-api.md +88 -0
- package/skills/utils/sequential-thinking/references/examples-architecture.md +94 -0
- package/skills/utils/sequential-thinking/references/examples-debug.md +90 -0
- package/skills/utils/sequential-thinking/scripts/format-thought.js +159 -0
- package/skills/utils/sequential-thinking/scripts/process-thought.js +236 -0
- package/skills/utils/sequential-thinking/tests/format-thought.test.js +133 -0
- package/skills/utils/sequential-thinking/tests/process-thought.test.js +215 -0
- package/skills/utils/write-skill/SKILL.md +655 -0
- package/skills/utils/write-skill/anthropic-best-practices.md +1150 -0
- package/skills/utils/write-skill/examples/CLAUDE_MD_TESTING.md +189 -0
- package/skills/utils/write-skill/graphviz-conventions.dot +172 -0
- package/skills/utils/write-skill/persuasion-principles.md +187 -0
- package/skills/utils/write-skill/render-graphs.js +168 -0
- package/skills/utils/write-skill/testing-skills-with-subagents.md +384 -0
- package/src/commands/init.js +238 -0
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
# Google Cloud Platform with gcloud CLI
|
|
2
|
+
|
|
3
|
+
Comprehensive guide for gcloud CLI - command-line interface for Google Cloud Platform.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
### Linux
|
|
8
|
+
```bash
|
|
9
|
+
curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-cli-linux-x86_64.tar.gz
|
|
10
|
+
tar -xf google-cloud-cli-linux-x86_64.tar.gz
|
|
11
|
+
./google-cloud-sdk/install.sh
|
|
12
|
+
./google-cloud-sdk/bin/gcloud init
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
### Debian/Ubuntu
|
|
16
|
+
```bash
|
|
17
|
+
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
|
|
18
|
+
sudo apt-get update && sudo apt-get install google-cloud-cli
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### macOS
|
|
22
|
+
```bash
|
|
23
|
+
curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-cli-darwin-arm.tar.gz
|
|
24
|
+
tar -xf google-cloud-cli-darwin-arm.tar.gz
|
|
25
|
+
./google-cloud-sdk/install.sh
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Authentication
|
|
29
|
+
|
|
30
|
+
### User Account
|
|
31
|
+
```bash
|
|
32
|
+
# Login with browser
|
|
33
|
+
gcloud auth login
|
|
34
|
+
|
|
35
|
+
# Login without browser (remote/headless)
|
|
36
|
+
gcloud auth login --no-browser
|
|
37
|
+
|
|
38
|
+
# List accounts
|
|
39
|
+
gcloud auth list
|
|
40
|
+
|
|
41
|
+
# Switch account
|
|
42
|
+
gcloud config set account user@example.com
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Service Account
|
|
46
|
+
```bash
|
|
47
|
+
# Activate with key file
|
|
48
|
+
gcloud auth activate-service-account SA_EMAIL --key-file=key.json
|
|
49
|
+
|
|
50
|
+
# Create service account
|
|
51
|
+
gcloud iam service-accounts create SA_NAME \
|
|
52
|
+
--display-name="Service Account"
|
|
53
|
+
|
|
54
|
+
# Create key
|
|
55
|
+
gcloud iam service-accounts keys create key.json \
|
|
56
|
+
--iam-account=SA_EMAIL
|
|
57
|
+
|
|
58
|
+
# Grant role
|
|
59
|
+
gcloud projects add-iam-policy-binding PROJECT_ID \
|
|
60
|
+
--member="serviceAccount:SA_EMAIL" \
|
|
61
|
+
--role="roles/compute.admin"
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Service Account Impersonation (Recommended)
|
|
65
|
+
```bash
|
|
66
|
+
# Impersonate for single command
|
|
67
|
+
gcloud compute instances list \
|
|
68
|
+
--impersonate-service-account=SA_EMAIL
|
|
69
|
+
|
|
70
|
+
# Set default impersonation
|
|
71
|
+
gcloud config set auth/impersonate_service_account SA_EMAIL
|
|
72
|
+
|
|
73
|
+
# Clear impersonation
|
|
74
|
+
gcloud config unset auth/impersonate_service_account
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Why impersonation? Short-lived credentials, no key files, centralized management.
|
|
78
|
+
|
|
79
|
+
## Configuration Management
|
|
80
|
+
|
|
81
|
+
### Named Configurations
|
|
82
|
+
```bash
|
|
83
|
+
# Create configuration
|
|
84
|
+
gcloud config configurations create dev
|
|
85
|
+
|
|
86
|
+
# List configurations
|
|
87
|
+
gcloud config configurations list
|
|
88
|
+
|
|
89
|
+
# Activate configuration
|
|
90
|
+
gcloud config configurations activate dev
|
|
91
|
+
|
|
92
|
+
# Set properties
|
|
93
|
+
gcloud config set project my-project-dev
|
|
94
|
+
gcloud config set compute/region us-central1
|
|
95
|
+
gcloud config set compute/zone us-central1-a
|
|
96
|
+
|
|
97
|
+
# View properties
|
|
98
|
+
gcloud config list
|
|
99
|
+
|
|
100
|
+
# Delete configuration
|
|
101
|
+
gcloud config configurations delete dev
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### Multi-Environment Pattern
|
|
105
|
+
```bash
|
|
106
|
+
# Development
|
|
107
|
+
gcloud config configurations create dev
|
|
108
|
+
gcloud config set project my-project-dev
|
|
109
|
+
gcloud config set account dev@example.com
|
|
110
|
+
|
|
111
|
+
# Staging
|
|
112
|
+
gcloud config configurations create staging
|
|
113
|
+
gcloud config set project my-project-staging
|
|
114
|
+
gcloud config set auth/impersonate_service_account staging-sa@project.iam.gserviceaccount.com
|
|
115
|
+
|
|
116
|
+
# Production
|
|
117
|
+
gcloud config configurations create prod
|
|
118
|
+
gcloud config set project my-project-prod
|
|
119
|
+
gcloud config set auth/impersonate_service_account prod-sa@project.iam.gserviceaccount.com
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
## Project Management
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
# List projects
|
|
126
|
+
gcloud projects list
|
|
127
|
+
|
|
128
|
+
# Create project
|
|
129
|
+
gcloud projects create PROJECT_ID --name="Project Name"
|
|
130
|
+
|
|
131
|
+
# Set active project
|
|
132
|
+
gcloud config set project PROJECT_ID
|
|
133
|
+
|
|
134
|
+
# Get current project
|
|
135
|
+
gcloud config get-value project
|
|
136
|
+
|
|
137
|
+
# Enable API
|
|
138
|
+
gcloud services enable compute.googleapis.com
|
|
139
|
+
gcloud services enable container.googleapis.com
|
|
140
|
+
|
|
141
|
+
# List enabled APIs
|
|
142
|
+
gcloud services list
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
## Output Formats
|
|
146
|
+
|
|
147
|
+
```bash
|
|
148
|
+
# JSON (recommended for scripting)
|
|
149
|
+
gcloud compute instances list --format=json
|
|
150
|
+
|
|
151
|
+
# YAML
|
|
152
|
+
gcloud compute instances list --format=yaml
|
|
153
|
+
|
|
154
|
+
# CSV
|
|
155
|
+
gcloud compute instances list --format="csv(name,zone,status)"
|
|
156
|
+
|
|
157
|
+
# Value (single field)
|
|
158
|
+
gcloud config get-value project --format="value()"
|
|
159
|
+
|
|
160
|
+
# Custom table
|
|
161
|
+
gcloud compute instances list \
|
|
162
|
+
--format="table(name,zone,machineType,status)"
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
## Filtering
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
# Server-side filtering (efficient)
|
|
169
|
+
gcloud compute instances list --filter="zone:us-central1-a"
|
|
170
|
+
gcloud compute instances list --filter="status=RUNNING"
|
|
171
|
+
gcloud compute instances list --filter="name~^web-.*"
|
|
172
|
+
|
|
173
|
+
# Multiple conditions
|
|
174
|
+
gcloud compute instances list \
|
|
175
|
+
--filter="zone:us-central1 AND status=RUNNING"
|
|
176
|
+
|
|
177
|
+
# Negation
|
|
178
|
+
gcloud compute instances list --filter="NOT status=TERMINATED"
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
## CI/CD Integration
|
|
182
|
+
|
|
183
|
+
### GitHub Actions
|
|
184
|
+
```yaml
|
|
185
|
+
name: Deploy to GCP
|
|
186
|
+
|
|
187
|
+
on:
|
|
188
|
+
push:
|
|
189
|
+
branches: [main]
|
|
190
|
+
|
|
191
|
+
jobs:
|
|
192
|
+
deploy:
|
|
193
|
+
runs-on: ubuntu-latest
|
|
194
|
+
steps:
|
|
195
|
+
- uses: actions/checkout@v3
|
|
196
|
+
|
|
197
|
+
- id: auth
|
|
198
|
+
uses: google-github-actions/auth@v1
|
|
199
|
+
with:
|
|
200
|
+
credentials_json: ${{ secrets.GCP_SA_KEY }}
|
|
201
|
+
|
|
202
|
+
- name: Set up Cloud SDK
|
|
203
|
+
uses: google-github-actions/setup-gcloud@v1
|
|
204
|
+
|
|
205
|
+
- name: Deploy
|
|
206
|
+
run: |
|
|
207
|
+
gcloud run deploy my-service \
|
|
208
|
+
--image=gcr.io/${{ secrets.GCP_PROJECT_ID }}/my-image \
|
|
209
|
+
--region=us-central1
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
### GitLab CI
|
|
213
|
+
```yaml
|
|
214
|
+
deploy:
|
|
215
|
+
image: google/cloud-sdk:alpine
|
|
216
|
+
script:
|
|
217
|
+
- echo $GCP_SA_KEY | base64 -d > key.json
|
|
218
|
+
- gcloud auth activate-service-account --key-file=key.json
|
|
219
|
+
- gcloud config set project $GCP_PROJECT_ID
|
|
220
|
+
- gcloud app deploy
|
|
221
|
+
only:
|
|
222
|
+
- main
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
## Best Practices
|
|
226
|
+
|
|
227
|
+
### Security
|
|
228
|
+
- Never commit credentials
|
|
229
|
+
- Use service account impersonation
|
|
230
|
+
- Grant minimal IAM permissions
|
|
231
|
+
- Rotate keys regularly
|
|
232
|
+
|
|
233
|
+
### Performance
|
|
234
|
+
- Use server-side filtering: `--filter`
|
|
235
|
+
- Limit output: `--limit=10`
|
|
236
|
+
- Project only needed fields: `--format="value(name)"`
|
|
237
|
+
- Batch operations with `--async`
|
|
238
|
+
|
|
239
|
+
### Maintainability
|
|
240
|
+
- Use named configurations for environments
|
|
241
|
+
- Document commands
|
|
242
|
+
- Use environment variables
|
|
243
|
+
- Implement error handling and retries
|
|
244
|
+
|
|
245
|
+
## Troubleshooting
|
|
246
|
+
|
|
247
|
+
```bash
|
|
248
|
+
# Check authentication
|
|
249
|
+
gcloud auth list
|
|
250
|
+
|
|
251
|
+
# Re-authenticate
|
|
252
|
+
gcloud auth login
|
|
253
|
+
gcloud auth application-default login
|
|
254
|
+
|
|
255
|
+
# Check IAM permissions
|
|
256
|
+
gcloud projects get-iam-policy PROJECT_ID \
|
|
257
|
+
--flatten="bindings[].members" \
|
|
258
|
+
--filter="bindings.members:user@example.com"
|
|
259
|
+
|
|
260
|
+
# View configuration
|
|
261
|
+
gcloud config list
|
|
262
|
+
|
|
263
|
+
# Reset configuration
|
|
264
|
+
gcloud config configurations delete default
|
|
265
|
+
gcloud init
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
## Quick Reference
|
|
269
|
+
|
|
270
|
+
| Task | Command |
|
|
271
|
+
|------|---------|
|
|
272
|
+
| Initialize | `gcloud init` |
|
|
273
|
+
| Login | `gcloud auth login` |
|
|
274
|
+
| Set project | `gcloud config set project PROJECT_ID` |
|
|
275
|
+
| List resources | `gcloud [SERVICE] list` |
|
|
276
|
+
| Create resource | `gcloud [SERVICE] create RESOURCE` |
|
|
277
|
+
| Delete resource | `gcloud [SERVICE] delete RESOURCE` |
|
|
278
|
+
| Get help | `gcloud [SERVICE] --help` |
|
|
279
|
+
|
|
280
|
+
## Global Flags
|
|
281
|
+
|
|
282
|
+
| Flag | Purpose |
|
|
283
|
+
|------|---------|
|
|
284
|
+
| `--project` | Override project |
|
|
285
|
+
| `--format` | Output format (json, yaml, csv) |
|
|
286
|
+
| `--filter` | Server-side filter |
|
|
287
|
+
| `--limit` | Limit results |
|
|
288
|
+
| `--quiet` | Suppress prompts |
|
|
289
|
+
| `--verbosity` | Log level (debug, info, warning, error) |
|
|
290
|
+
| `--async` | Don't wait for operation |
|
|
291
|
+
|
|
292
|
+
## Resources
|
|
293
|
+
|
|
294
|
+
- gcloud Reference: https://cloud.google.com/sdk/gcloud/reference
|
|
295
|
+
- Installation: https://cloud.google.com/sdk/docs/install
|
|
296
|
+
- Authentication: https://cloud.google.com/docs/authentication
|
|
297
|
+
- Cheatsheet: https://cloud.google.com/sdk/docs/cheatsheet
|
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
# Google Cloud Services
|
|
2
|
+
|
|
3
|
+
## Compute Engine (VMs)
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
# List instances
|
|
7
|
+
gcloud compute instances list
|
|
8
|
+
|
|
9
|
+
# Create instance
|
|
10
|
+
gcloud compute instances create my-instance \
|
|
11
|
+
--zone=us-central1-a \
|
|
12
|
+
--machine-type=e2-medium \
|
|
13
|
+
--image-family=debian-11 \
|
|
14
|
+
--image-project=debian-cloud \
|
|
15
|
+
--boot-disk-size=10GB
|
|
16
|
+
|
|
17
|
+
# SSH into instance
|
|
18
|
+
gcloud compute ssh my-instance --zone=us-central1-a
|
|
19
|
+
|
|
20
|
+
# Copy files
|
|
21
|
+
gcloud compute scp local-file.txt my-instance:~/remote-file.txt \
|
|
22
|
+
--zone=us-central1-a
|
|
23
|
+
|
|
24
|
+
# Stop instance
|
|
25
|
+
gcloud compute instances stop my-instance --zone=us-central1-a
|
|
26
|
+
|
|
27
|
+
# Delete instance
|
|
28
|
+
gcloud compute instances delete my-instance --zone=us-central1-a
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Google Kubernetes Engine (GKE)
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
# Create cluster
|
|
35
|
+
gcloud container clusters create my-cluster \
|
|
36
|
+
--zone=us-central1-a \
|
|
37
|
+
--num-nodes=3 \
|
|
38
|
+
--machine-type=e2-medium
|
|
39
|
+
|
|
40
|
+
# Get credentials
|
|
41
|
+
gcloud container clusters get-credentials my-cluster --zone=us-central1-a
|
|
42
|
+
|
|
43
|
+
# List clusters
|
|
44
|
+
gcloud container clusters list
|
|
45
|
+
|
|
46
|
+
# Resize cluster
|
|
47
|
+
gcloud container clusters resize my-cluster \
|
|
48
|
+
--num-nodes=5 \
|
|
49
|
+
--zone=us-central1-a
|
|
50
|
+
|
|
51
|
+
# Delete cluster
|
|
52
|
+
gcloud container clusters delete my-cluster --zone=us-central1-a
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Cloud Run (Serverless Containers)
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
# Deploy container
|
|
59
|
+
gcloud run deploy my-service \
|
|
60
|
+
--image=gcr.io/PROJECT_ID/my-image:tag \
|
|
61
|
+
--platform=managed \
|
|
62
|
+
--region=us-central1 \
|
|
63
|
+
--allow-unauthenticated
|
|
64
|
+
|
|
65
|
+
# List services
|
|
66
|
+
gcloud run services list
|
|
67
|
+
|
|
68
|
+
# Describe service
|
|
69
|
+
gcloud run services describe my-service --region=us-central1
|
|
70
|
+
|
|
71
|
+
# Delete service
|
|
72
|
+
gcloud run services delete my-service --region=us-central1
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## App Engine
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
# Deploy application
|
|
79
|
+
gcloud app deploy app.yaml
|
|
80
|
+
|
|
81
|
+
# View application
|
|
82
|
+
gcloud app browse
|
|
83
|
+
|
|
84
|
+
# View logs
|
|
85
|
+
gcloud app logs tail
|
|
86
|
+
|
|
87
|
+
# List versions
|
|
88
|
+
gcloud app versions list
|
|
89
|
+
|
|
90
|
+
# Delete version
|
|
91
|
+
gcloud app versions delete VERSION_ID
|
|
92
|
+
|
|
93
|
+
# Set traffic split
|
|
94
|
+
gcloud app services set-traffic SERVICE \
|
|
95
|
+
--splits v1=0.5,v2=0.5
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## Cloud Storage
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
# Create bucket
|
|
102
|
+
gsutil mb gs://my-bucket-name
|
|
103
|
+
|
|
104
|
+
# Upload file
|
|
105
|
+
gsutil cp local-file.txt gs://my-bucket-name/
|
|
106
|
+
|
|
107
|
+
# Download file
|
|
108
|
+
gsutil cp gs://my-bucket-name/file.txt ./
|
|
109
|
+
|
|
110
|
+
# List contents
|
|
111
|
+
gsutil ls gs://my-bucket-name/
|
|
112
|
+
|
|
113
|
+
# Sync directory
|
|
114
|
+
gsutil rsync -r ./local-dir gs://my-bucket-name/remote-dir
|
|
115
|
+
|
|
116
|
+
# Set permissions
|
|
117
|
+
gsutil iam ch user:user@example.com:objectViewer gs://my-bucket-name
|
|
118
|
+
|
|
119
|
+
# Delete bucket
|
|
120
|
+
gsutil rm -r gs://my-bucket-name
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
## Cloud SQL
|
|
124
|
+
|
|
125
|
+
```bash
|
|
126
|
+
# Create instance
|
|
127
|
+
gcloud sql instances create my-instance \
|
|
128
|
+
--database-version=POSTGRES_14 \
|
|
129
|
+
--tier=db-f1-micro \
|
|
130
|
+
--region=us-central1
|
|
131
|
+
|
|
132
|
+
# Create database
|
|
133
|
+
gcloud sql databases create my-database \
|
|
134
|
+
--instance=my-instance
|
|
135
|
+
|
|
136
|
+
# Create user
|
|
137
|
+
gcloud sql users create my-user \
|
|
138
|
+
--instance=my-instance \
|
|
139
|
+
--password=PASSWORD
|
|
140
|
+
|
|
141
|
+
# Connect
|
|
142
|
+
gcloud sql connect my-instance --user=my-user
|
|
143
|
+
|
|
144
|
+
# Delete instance
|
|
145
|
+
gcloud sql instances delete my-instance
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
## Cloud Functions
|
|
149
|
+
|
|
150
|
+
```bash
|
|
151
|
+
# Deploy function
|
|
152
|
+
gcloud functions deploy my-function \
|
|
153
|
+
--runtime=python39 \
|
|
154
|
+
--trigger-http \
|
|
155
|
+
--allow-unauthenticated \
|
|
156
|
+
--entry-point=main
|
|
157
|
+
|
|
158
|
+
# List functions
|
|
159
|
+
gcloud functions list
|
|
160
|
+
|
|
161
|
+
# Describe function
|
|
162
|
+
gcloud functions describe my-function
|
|
163
|
+
|
|
164
|
+
# Call function
|
|
165
|
+
gcloud functions call my-function
|
|
166
|
+
|
|
167
|
+
# Delete function
|
|
168
|
+
gcloud functions delete my-function
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
## BigQuery
|
|
172
|
+
|
|
173
|
+
```bash
|
|
174
|
+
# List datasets
|
|
175
|
+
bq ls
|
|
176
|
+
|
|
177
|
+
# Create dataset
|
|
178
|
+
bq mk my_dataset
|
|
179
|
+
|
|
180
|
+
# Load data
|
|
181
|
+
bq load --source_format=CSV my_dataset.my_table \
|
|
182
|
+
gs://my-bucket/data.csv \
|
|
183
|
+
schema.json
|
|
184
|
+
|
|
185
|
+
# Query
|
|
186
|
+
bq query --use_legacy_sql=false \
|
|
187
|
+
'SELECT * FROM `my_dataset.my_table` LIMIT 10'
|
|
188
|
+
|
|
189
|
+
# Delete dataset
|
|
190
|
+
bq rm -r -f my_dataset
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
## Cloud Build
|
|
194
|
+
|
|
195
|
+
```bash
|
|
196
|
+
# Submit build
|
|
197
|
+
gcloud builds submit --tag=gcr.io/PROJECT_ID/my-image
|
|
198
|
+
|
|
199
|
+
# List builds
|
|
200
|
+
gcloud builds list
|
|
201
|
+
|
|
202
|
+
# Describe build
|
|
203
|
+
gcloud builds describe BUILD_ID
|
|
204
|
+
|
|
205
|
+
# Cancel build
|
|
206
|
+
gcloud builds cancel BUILD_ID
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
## Artifact Registry
|
|
210
|
+
|
|
211
|
+
```bash
|
|
212
|
+
# Create repository
|
|
213
|
+
gcloud artifacts repositories create my-repo \
|
|
214
|
+
--repository-format=docker \
|
|
215
|
+
--location=us-central1
|
|
216
|
+
|
|
217
|
+
# Configure Docker
|
|
218
|
+
gcloud auth configure-docker us-central1-docker.pkg.dev
|
|
219
|
+
|
|
220
|
+
# Push image
|
|
221
|
+
docker tag my-image us-central1-docker.pkg.dev/PROJECT_ID/my-repo/my-image
|
|
222
|
+
docker push us-central1-docker.pkg.dev/PROJECT_ID/my-repo/my-image
|
|
223
|
+
|
|
224
|
+
# List repositories
|
|
225
|
+
gcloud artifacts repositories list
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
## Networking
|
|
229
|
+
|
|
230
|
+
```bash
|
|
231
|
+
# Create VPC network
|
|
232
|
+
gcloud compute networks create my-network \
|
|
233
|
+
--subnet-mode=auto
|
|
234
|
+
|
|
235
|
+
# Create firewall rule
|
|
236
|
+
gcloud compute firewall-rules create allow-http \
|
|
237
|
+
--network=my-network \
|
|
238
|
+
--allow=tcp:80
|
|
239
|
+
|
|
240
|
+
# List networks
|
|
241
|
+
gcloud compute networks list
|
|
242
|
+
|
|
243
|
+
# List firewall rules
|
|
244
|
+
gcloud compute firewall-rules list
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
## IAM
|
|
248
|
+
|
|
249
|
+
```bash
|
|
250
|
+
# List IAM policy
|
|
251
|
+
gcloud projects get-iam-policy PROJECT_ID
|
|
252
|
+
|
|
253
|
+
# Add IAM binding
|
|
254
|
+
gcloud projects add-iam-policy-binding PROJECT_ID \
|
|
255
|
+
--member="user:user@example.com" \
|
|
256
|
+
--role="roles/viewer"
|
|
257
|
+
|
|
258
|
+
# Remove IAM binding
|
|
259
|
+
gcloud projects remove-iam-policy-binding PROJECT_ID \
|
|
260
|
+
--member="user:user@example.com" \
|
|
261
|
+
--role="roles/viewer"
|
|
262
|
+
|
|
263
|
+
# List service accounts
|
|
264
|
+
gcloud iam service-accounts list
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
## Monitoring & Logging
|
|
268
|
+
|
|
269
|
+
```bash
|
|
270
|
+
# View logs
|
|
271
|
+
gcloud logging read "resource.type=gce_instance" \
|
|
272
|
+
--limit=10 \
|
|
273
|
+
--format=json
|
|
274
|
+
|
|
275
|
+
# Create log sink
|
|
276
|
+
gcloud logging sinks create my-sink \
|
|
277
|
+
storage.googleapis.com/my-bucket \
|
|
278
|
+
--log-filter="resource.type=gce_instance"
|
|
279
|
+
|
|
280
|
+
# List metrics
|
|
281
|
+
gcloud monitoring metrics-descriptors list
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
## Quick Reference
|
|
285
|
+
|
|
286
|
+
| Service | Command Prefix |
|
|
287
|
+
|---------|----------------|
|
|
288
|
+
| Compute Engine | `gcloud compute` |
|
|
289
|
+
| GKE | `gcloud container` |
|
|
290
|
+
| Cloud Run | `gcloud run` |
|
|
291
|
+
| App Engine | `gcloud app` |
|
|
292
|
+
| Cloud Storage | `gsutil` |
|
|
293
|
+
| BigQuery | `bq` |
|
|
294
|
+
| Cloud SQL | `gcloud sql` |
|
|
295
|
+
| Cloud Functions | `gcloud functions` |
|
|
296
|
+
| IAM | `gcloud iam` |
|
|
297
|
+
|
|
298
|
+
## Resources
|
|
299
|
+
|
|
300
|
+
- Compute Engine: https://cloud.google.com/compute/docs
|
|
301
|
+
- GKE: https://cloud.google.com/kubernetes-engine/docs
|
|
302
|
+
- Cloud Run: https://cloud.google.com/run/docs
|
|
303
|
+
- App Engine: https://cloud.google.com/appengine/docs
|
|
304
|
+
- Cloud Storage: https://cloud.google.com/storage/docs
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
# Kubernetes Core Concepts
|
|
2
|
+
|
|
3
|
+
## Cluster Architecture
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
CONTROL PLANE WORKER NODES
|
|
7
|
+
├── API Server (kubectl) ├── Kubelet (node agent)
|
|
8
|
+
├── Scheduler (pod placement) ├── Kube-proxy (networking)
|
|
9
|
+
├── Controller Manager └── Container Runtime
|
|
10
|
+
└── etcd (cluster state)
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Pod
|
|
14
|
+
```yaml
|
|
15
|
+
apiVersion: v1
|
|
16
|
+
kind: Pod
|
|
17
|
+
metadata:
|
|
18
|
+
name: myapp-pod
|
|
19
|
+
spec:
|
|
20
|
+
containers:
|
|
21
|
+
- name: myapp
|
|
22
|
+
image: myapp:1.0
|
|
23
|
+
ports:
|
|
24
|
+
- containerPort: 8080
|
|
25
|
+
resources:
|
|
26
|
+
requests: { memory: "256Mi", cpu: "250m" }
|
|
27
|
+
limits: { memory: "512Mi", cpu: "500m" }
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Deployment
|
|
31
|
+
```yaml
|
|
32
|
+
apiVersion: apps/v1
|
|
33
|
+
kind: Deployment
|
|
34
|
+
metadata:
|
|
35
|
+
name: myapp
|
|
36
|
+
spec:
|
|
37
|
+
replicas: 3
|
|
38
|
+
strategy:
|
|
39
|
+
type: RollingUpdate
|
|
40
|
+
rollingUpdate: { maxSurge: 1, maxUnavailable: 0 }
|
|
41
|
+
selector:
|
|
42
|
+
matchLabels: { app: myapp }
|
|
43
|
+
template:
|
|
44
|
+
metadata:
|
|
45
|
+
labels: { app: myapp }
|
|
46
|
+
spec:
|
|
47
|
+
containers:
|
|
48
|
+
- name: myapp
|
|
49
|
+
image: myapp:1.0
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Service
|
|
53
|
+
```yaml
|
|
54
|
+
apiVersion: v1
|
|
55
|
+
kind: Service
|
|
56
|
+
metadata:
|
|
57
|
+
name: myapp-service
|
|
58
|
+
spec:
|
|
59
|
+
type: ClusterIP # ClusterIP, NodePort, LoadBalancer
|
|
60
|
+
selector: { app: myapp }
|
|
61
|
+
ports:
|
|
62
|
+
- port: 8080
|
|
63
|
+
targetPort: 8080
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## ConfigMap & Secret
|
|
67
|
+
```yaml
|
|
68
|
+
apiVersion: v1
|
|
69
|
+
kind: ConfigMap
|
|
70
|
+
metadata:
|
|
71
|
+
name: app-config
|
|
72
|
+
data:
|
|
73
|
+
DATABASE_HOST: "postgres.svc.cluster.local"
|
|
74
|
+
---
|
|
75
|
+
apiVersion: v1
|
|
76
|
+
kind: Secret
|
|
77
|
+
type: Opaque
|
|
78
|
+
stringData:
|
|
79
|
+
password: secretpassword
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Workload Types
|
|
83
|
+
|
|
84
|
+
| Type | Use Case |
|
|
85
|
+
|------|----------|
|
|
86
|
+
| Deployment | Stateless apps |
|
|
87
|
+
| StatefulSet | Databases |
|
|
88
|
+
| DaemonSet | One per node |
|
|
89
|
+
| Job | Batch tasks |
|
|
90
|
+
| CronJob | Scheduled |
|
|
91
|
+
|
|
92
|
+
## Labels
|
|
93
|
+
```yaml
|
|
94
|
+
labels:
|
|
95
|
+
app: myapp
|
|
96
|
+
version: v1.0.0
|
|
97
|
+
tier: frontend
|
|
98
|
+
environment: prod
|
|
99
|
+
```
|