{"id":"85e17a23-f44a-4408-a789-b7f8222f0b52","shortId":"V728LJ","kind":"skill","title":"devops-deploy","tagline":"DevOps e deploy de aplicacoes — Docker, CI/CD com GitHub Actions, AWS Lambda, SAM, Terraform, infraestrutura como codigo e monitoramento.","description":"# DEVOPS-DEPLOY — Da Ideia para Producao\n\n## Overview\n\nDevOps e deploy de aplicacoes — Docker, CI/CD com GitHub Actions, AWS Lambda, SAM, Terraform, infraestrutura como codigo e monitoramento. Ativar para: dockerizar aplicacao, configurar pipeline CI/CD, deploy na AWS, Lambda, ECS, configurar GitHub Actions, Terraform, rollback, blue-green deploy, health checks, alertas.\n\n## When to Use This Skill\n\n- When you need specialized assistance with this domain\n\n## Do Not Use This Skill When\n\n- The task is unrelated to devops deploy\n- A simpler, more specific tool can handle the request\n- The user needs general-purpose assistance without domain expertise\n\n## How It Works\n\n> \"Move fast and don't break things.\" — Engenharia de elite nao e lenta.\n> E rapida e confiavel ao mesmo tempo.\n\n---\n\n## Dockerfile Otimizado (Python)\n\n```dockerfile\nFROM python:3.11-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --no-cache-dir --user -r requirements.txt\n\nFROM python:3.11-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nENV PATH=/root/.local/bin:$PATH\nENV PYTHONUNBUFFERED=1\nEXPOSE 8000\nHEALTHCHECK --interval=30s --timeout=3s CMD curl -f http://localhost:8000/health || exit 1\nCMD [\"uvicorn\", \"main:app\", \"--host\", \"0.0.0.0\", \"--port\", \"8000\"]\n```\n\n## Docker Compose (Dev Local)\n\n```yaml\nversion: \"3.9\"\nservices:\n  app:\n    build: .\n    ports: [\"8000:8000\"]\n    environment:\n      - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}\n    volumes:\n      - .:/app\n    depends_on: [db, redis]\n  db:\n    image: postgres:15\n    environment:\n      POSTGRES_DB: auri\n      POSTGRES_USER: auri\n      POSTGRES_PASSWORD: ${DB_PASSWORD}\n    volumes:\n      - pgdata:/var/lib/postgresql/data\n  redis:\n    image: redis:7-alpine\nvolumes:\n  pgdata:\n```\n\n---\n\n## Sam Template (Serverless)\n\n```yaml\n\n## Template.Yaml\n\nAWSTemplateFormatVersion: '2010-09-09'\nTransform: AWS::Serverless-2016-10-31\n\nGlobals:\n  Function:\n    Timeout: 30\n    Runtime: python3.11\n    Environment:\n      Variables:\n        ANTHROPIC_API_KEY: !Ref AnthropicApiKey\n        DYNAMODB_TABLE: !Ref AuriTable\n\nResources:\n  AuriFunction:\n    Type: AWS::Serverless::Function\n    Properties:\n      CodeUri: src/\n      Handler: lambda_function.handler\n      MemorySize: 512\n      Policies:\n        - DynamoDBCrudPolicy:\n            TableName: !Ref AuriTable\n\n  AuriTable:\n    Type: AWS::DynamoDB::Table\n    Properties:\n      TableName: auri-users\n      BillingMode: PAY_PER_REQUEST\n      AttributeDefinitions:\n        - AttributeName: userId\n          AttributeType: S\n      KeySchema:\n        - AttributeName: userId\n          KeyType: HASH\n      TimeToLiveSpecification:\n        AttributeName: ttl\n        Enabled: true\n```\n\n## Deploy Commands\n\n```bash\n\n## Build E Deploy\n\nsam build\nsam deploy --guided  # primeira vez\nsam deploy           # deploys seguintes\n\n## Deploy Rapido (Sem Confirmacao)\n\nsam deploy --no-confirm-changeset --no-fail-on-empty-changeset\n\n## Ver Logs Em Tempo Real\n\nsam logs -n AuriFunction --tail\n\n## Deletar Stack\n\nsam delete\n```\n\n---\n\n## .Github/Workflows/Deploy.Yml\n\nname: Deploy Auri\n\non:\n  push:\n    branches: [main]\n  pull_request:\n    branches: [main]\n\njobs:\n  test:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v4\n      - uses: actions/setup-python@v5\n        with: { python-version: \"3.11\" }\n      - run: pip install -r requirements.txt\n      - run: pytest tests/ -v --cov=src --cov-report=xml\n      - uses: codecov/codecov-action@v4\n\n  security:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v4\n      - run: pip install bandit safety\n      - run: bandit -r src/ -ll\n      - run: safety check -r requirements.txt\n\n  deploy:\n    needs: [test, security]\n    if: github.ref == 'refs/heads/main'\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v4\n      - uses: aws-actions/setup-sam@v2\n      - uses: aws-actions/configure-aws-credentials@v4\n        with:\n          aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}\n          aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}\n          aws-region: us-east-1\n      - run: sam build\n      - run: sam deploy --no-confirm-changeset\n      - name: Notify Telegram on Success\n        run: |\n          curl -s -X POST \"https://api.telegram.org/bot${{ secrets.TELEGRAM_BOT_TOKEN }}/sendMessage\" \\\n            -d \"chat_id=${{ secrets.TELEGRAM_CHAT_ID }}\" \\\n            -d \"text=Auri deployed successfully! Commit: ${{ github.sha }}\"\n```\n\n---\n\n## Health Check Endpoint\n\n```python\nfrom fastapi import FastAPI\nimport time, os\n\napp = FastAPI()\nSTART_TIME = time.time()\n\n@app.get(\"/health\")\nasync def health():\n    return {\n        \"status\": \"healthy\",\n        \"uptime_seconds\": time.time() - START_TIME,\n        \"version\": os.environ.get(\"APP_VERSION\", \"unknown\"),\n        \"environment\": os.environ.get(\"ENV\", \"production\")\n    }\n```\n\n## Alertas Cloudwatch\n\n```python\nimport boto3\n\ndef create_error_alarm(function_name: str, sns_topic_arn: str):\n    cw = boto3.client(\"cloudwatch\")\n    cw.put_metric_alarm(\n        AlarmName=f\"{function_name}-errors\",\n        MetricName=\"Errors\",\n        Namespace=\"AWS/Lambda\",\n        Dimensions=[{\"Name\": \"FunctionName\", \"Value\": function_name}],\n        Period=300,\n        EvaluationPeriods=1,\n        Threshold=5,\n        ComparisonOperator=\"GreaterThanThreshold\",\n        AlarmActions=[sns_topic_arn],\n        TreatMissingData=\"notBreaching\"\n    )\n```\n\n---\n\n## 5. Checklist De Producao\n\n- [ ] Variaveis de ambiente via Secrets Manager (nunca hardcoded)\n- [ ] Health check endpoint respondendo\n- [ ] Logs estruturados (JSON) com request_id\n- [ ] Rate limiting configurado\n- [ ] CORS restrito a dominios autorizados\n- [ ] DynamoDB com backup automatico ativado\n- [ ] Lambda com timeout adequado (10-30s)\n- [ ] CloudWatch alarmes para erros e latencia\n- [ ] Rollback plan documentado\n- [ ] Load test antes do lancamento\n\n---\n\n## 6. Comandos\n\n| Comando | Acao |\n|---------|------|\n| `/docker-setup` | Dockeriza a aplicacao |\n| `/sam-deploy` | Deploy completo na AWS Lambda |\n| `/ci-cd-setup` | Configura GitHub Actions pipeline |\n| `/monitoring-setup` | Configura CloudWatch e alertas |\n| `/production-checklist` | Roda checklist pre-lancamento |\n| `/rollback` | Plano de rollback para versao anterior |\n\n## Best Practices\n\n- Provide clear, specific context about your project and requirements\n- Review all suggestions before applying them to production code\n- Combine with other complementary skills for comprehensive analysis\n\n## Common Pitfalls\n\n- Using this skill for tasks outside its domain expertise\n- Applying recommendations without understanding your specific context\n- Not providing enough project context for accurate analysis\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.","tags":["devops","deploy","antigravity","awesome","skills","sickn33","agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows"],"capabilities":["skill","source-sickn33","skill-devops-deploy","topic-agent-skills","topic-agentic-skills","topic-ai-agent-skills","topic-ai-agents","topic-ai-coding","topic-ai-workflows","topic-antigravity","topic-antigravity-skills","topic-claude-code","topic-claude-code-skills","topic-codex-cli","topic-codex-skills"],"categories":["antigravity-awesome-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/devops-deploy","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add sickn33/antigravity-awesome-skills","source_repo":"https://github.com/sickn33/antigravity-awesome-skills","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 34831 github stars · SKILL.md body (7,013 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-24T06:51:03.975Z","embedding":null,"createdAt":"2026-04-18T21:36:04.511Z","updatedAt":"2026-04-24T06:51:03.975Z","lastSeenAt":"2026-04-24T06:51:03.975Z","tsv":"'-09':265,266 '-10':271 '-2016':270 '-30':684 '-31':272 '/app':153,171,228 '/bot$':537 '/ci-cd-setup':714 '/configure-aws-credentials':487 '/docker-setup':704 '/health':572 '/monitoring-setup':719 '/production-checklist':724 '/rollback':730 '/root/.local':175,176 '/root/.local/bin':180 '/sam-deploy':708 '/sendmessage':541 '/setup-sam':481 '/var/lib/postgresql/data':250 '0.0.0.0':204 '1':184,198,514,633 '10':683 '15':236 '2010':264 '3.11':148,168,415 '3.9':213 '30':276 '300':631 '30s':189 '3s':191 '5':635,644 '512':302 '6':700 '7':254 '8000':186,206,218,219 '8000/health':196 'acao':703 'access':492,496,502,506 'accur':789 'action':13,40,64,480,486,717 'actions/checkout':406,443,475 'actions/setup-python':409 'adequado':682 'alarm':601,614,687 'alarmact':638 'alarmnam':615 'alerta':73,593,723 'alpin':255 'ambient':650 'analysi':764,790 'ant':697 'anterior':736 'anthrop':221,224,281 'anthropicapikey':285 'ao':139 'api':222,225,282 'api.telegram.org':536 'api.telegram.org/bot$':535 'aplicacao':53,707 'aplicaco':8,35 'app':202,215,566,586 'app.get':571 'appli':752,776 'arn':607,641 'ask':824 'assist':83,115 'async':573 'ativado':678 'ativar':50 'attributedefinit':322 'attributenam':323,328,333 'attributetyp':325 'auri':240,243,316,387,550 'auri-us':315 'aurifunct':291,378 'aurit':289,307,308 'automatico':677 'autorizado':673 'aw':14,41,59,268,293,310,479,485,491,500,509,712 'aws-access-key-id':490 'aws-act':478,484 'aws-region':508 'aws-secret-access-key':499 'aws/lambda':623 'awstemplateformatvers':263 'backup':676 'bandit':448,451 'bash':339 'best':737 'billingmod':318 'blue':68 'blue-green':67 'bot':539 'boto3':597 'boto3.client':610 'boundari':832 'branch':390,394 'break':127 'build':216,340,344,517 'builder':151,174 'cach':161 'changeset':363,369,524 'chat':543,546 'check':72,457,556,657 'checklist':645,726 'ci/cd':10,37,56 'clarif':826 'clear':740,799 'cloudwatch':594,611,686,721 'cmd':192,199 'code':756 'codecov/codecov-action':432 'codeuri':297 'codigo':20,47 'com':11,38,663,675,680 'comando':701,702 'combin':757 'command':338 'commit':553 'common':765 'como':19,46 'comparisonoper':636 'complementari':760 'completo':710 'compos':208 'comprehens':763 'confiavel':138 'configura':715,720 'configurado':668 'configurar':54,62 'confirm':362,523 'confirmacao':357 'context':742,782,787 'copi':154,172,177 'cor':669 'cov':425,428 'cov-report':427 'creat':599 'criteria':835 'curl':193,531 'cw':609 'cw.put':612 'd':542,548 'da':26 'db':231,233,239,246 'de':7,34,130,646,649,732 'def':574,598 'delet':383 'deletar':380 'depend':229 'deploy':3,6,25,33,57,70,99,337,342,346,351,352,354,359,386,460,520,551,709 'describ':803 'dev':209 'devop':2,4,24,31,98 'devops-deploy':1,23 'dimens':624 'dir':162 'docker':9,36,207 'dockerfil':142,145 'dockeriza':705 'dockerizar':52 'documentado':694 'domain':86,117,774 'dominio':672 'dynamodb':286,311,674 'dynamodbcrudpolici':304 'e':5,21,32,48,133,135,137,341,690,722 'east':513 'ec':61 'elit':131 'em':372 'empti':368 'enabl':335 'endpoint':557,658 'engenharia':129 'enough':785 'env':178,182,591 'environ':220,237,279,589,815 'environment-specif':814 'erro':689 'error':600,619,621 'estruturado':661 'evaluationperiod':632 'exit':197 'expert':820 'expertis':118,775 'expos':185 'f':194,616 'fail':366 'fast':123 'fastapi':560,562,567 'function':274,295,602,617,628 'functionnam':626 'general':113 'general-purpos':112 'github':12,39,63,716 'github.ref':465 'github.sha':554 'github/workflows/deploy.yml':384 'global':273 'greaterthanthreshold':637 'green':69 'guid':347 'handl':106 'handler':299 'hardcod':655 'hash':331 'health':71,555,575,656 'healthcheck':187 'healthi':578 'host':203 'id':494,498,544,547,665 'ideia':27 'imag':234,252 'import':561,563,596 'infraestrutura':18,45 'input':829 'instal':158,418,447 'interv':188 'job':396 'json':662 'key':223,226,283,493,497,503,507 'keyschema':327 'keytyp':330 'lambda':15,42,60,679,713 'lambda_function.handler':300 'lancamento':699,729 'latencia':691 'latest':403,440,472 'lenta':134 'limit':667,791 'll':454 'load':695 'local':210 'localhost':195 'log':371,376,660 'main':201,391,395 'manag':653 'match':800 'memorys':301 'mesmo':140 'metric':613 'metricnam':620 'miss':837 'monitoramento':22,49 'move':122 'n':377 'na':58,711 'name':385,525,603,618,625,629 'namespac':622 'nao':132 'need':81,111,461 'no-cache-dir':159 'no-confirm-changeset':360,521 'no-fail-on-empty-changeset':364 'notbreach':643 'notifi':526 'nunca':654 'os':565 'os.environ.get':585,590 'otimizado':143 'output':809 'outsid':772 'overview':30 'para':28,51,688,734 'password':245,247 'path':179,181 'pay':319 'per':320 'period':630 'permiss':830 'pgdata':249,257 'pip':157,417,446 'pipelin':55,718 'pitfal':766 'plan':693 'plano':731 'polici':303 'port':205,217 'post':534 'postgr':235,238,241,244 'practic':738 'pre':728 'pre-lancamento':727 'primeira':348 'producao':29,647 'product':592,755 'project':745,786 'properti':296,313 'provid':739,784 'pull':392 'purpos':114 'push':389 'pytest':422 'python':144,147,167,413,558,595 'python-vers':412 'python3.11':278 'pythonunbuff':183 'r':164,419,452,458 'rapida':136 'rapido':355 'rate':666 'real':374 'recommend':777 'redi':232,251,253 'ref':284,288,306 'refs/heads/main':466 'region':510 'report':429 'request':108,321,393,664 'requir':747,828 'requirements.txt':155,165,420,459 'resourc':290 'respondendo':659 'restrito':670 'return':576 'review':748,821 'roda':725 'rollback':66,692,733 'run':156,399,416,421,436,445,450,455,468,515,518,530 'runs-on':398,435,467 'runtim':277 'safeti':449,456,831 'sam':16,43,258,343,345,350,358,375,382,516,519 'scope':802 'second':580 'secret':501,505,652 'secrets.aws':495,504 'secrets.telegram':538,545 'secur':434,463 'seguint':353 'sem':356 'serverless':260,269,294 'servic':214 'simpler':101 'skill':78,91,761,769,794 'skill-devops-deploy' 'slim':149,169 'sns':605,639 'source-sickn33' 'special':82 'specif':103,741,781,816 'src':298,426,453 'stack':381 'start':568,582 'status':577 'step':404,441,473 'stop':822 'str':604,608 'substitut':812 'success':529,552,834 'suggest':750 'tabl':287,312 'tablenam':305,314 'tail':379 'task':94,771,798 'telegram':527 'templat':259 'template.yaml':262 'tempo':141,373 'terraform':17,44,65 'test':397,423,462,696,818 'text':549 'thing':128 'threshold':634 'time':564,569,583 'time.time':570,581 'timeout':190,275,681 'timetolivespecif':332 'token':540 'tool':104 'topic':606,640 'topic-agent-skills' 'topic-agentic-skills' 'topic-ai-agent-skills' 'topic-ai-agents' 'topic-ai-coding' 'topic-ai-workflows' 'topic-antigravity' 'topic-antigravity-skills' 'topic-claude-code' 'topic-claude-code-skills' 'topic-codex-cli' 'topic-codex-skills' 'transform':267 'treat':807 'treatmissingdata':642 'true':336 'ttl':334 'type':292,309 'ubuntu':402,439,471 'ubuntu-latest':401,438,470 'understand':779 'unknown':588 'unrel':96 'uptim':579 'us':512 'us-east':511 'use':76,89,405,408,431,442,474,477,483,767,792 'user':110,163,242,317 'userid':324,329 'uvicorn':200 'v':424 'v2':482 'v4':407,433,444,476,488 'v5':410 'valid':817 'valu':627 'variabl':280 'variavei':648 'ver':370 'versao':735 'version':212,414,584,587 'vez':349 'via':651 'volum':227,248,256 'without':116,778 'work':121 'workdir':152,170 'x':533 'xml':430 'yaml':211,261","prices":[{"id":"e028906f-aa9a-49c9-bd2f-ce89571f56eb","listingId":"85e17a23-f44a-4408-a789-b7f8222f0b52","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"sickn33","category":"antigravity-awesome-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T21:36:04.511Z"}],"sources":[{"listingId":"85e17a23-f44a-4408-a789-b7f8222f0b52","source":"github","sourceId":"sickn33/antigravity-awesome-skills/devops-deploy","sourceUrl":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/devops-deploy","isPrimary":false,"firstSeenAt":"2026-04-18T21:36:04.511Z","lastSeenAt":"2026-04-24T06:51:03.975Z"}],"details":{"listingId":"85e17a23-f44a-4408-a789-b7f8222f0b52","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"sickn33","slug":"devops-deploy","github":{"repo":"sickn33/antigravity-awesome-skills","stars":34831,"topics":["agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows","antigravity","antigravity-skills","claude-code","claude-code-skills","codex-cli","codex-skills","cursor","cursor-skills","developer-tools","gemini-cli","gemini-skills","kiro","mcp","skill-library"],"license":"mit","html_url":"https://github.com/sickn33/antigravity-awesome-skills","pushed_at":"2026-04-24T06:41:17Z","description":"Installable GitHub library of 1,400+ agentic skills for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and more. Includes installer CLI, bundles, workflows, and official/community skill collections.","skill_md_sha":"f4a48458fcff8125e8046477b5f5f328f1412999","skill_md_path":"skills/devops-deploy/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/devops-deploy"},"layout":"multi","source":"github","category":"antigravity-awesome-skills","frontmatter":{"name":"devops-deploy","description":"DevOps e deploy de aplicacoes — Docker, CI/CD com GitHub Actions, AWS Lambda, SAM, Terraform, infraestrutura como codigo e monitoramento."},"skills_sh_url":"https://skills.sh/sickn33/antigravity-awesome-skills/devops-deploy"},"updatedAt":"2026-04-24T06:51:03.975Z"}}