Communitygithub.com

Implantação de Site Estático no Aliyun

Skill e tutorial do Codex para implantar sites estáticos frontend no Aliyun sem a necessidade de um domínio personalizado.

O que é Implantação de Site Estático no Aliyun?

Esta skill do Codex permite implantar sites estáticos frontend no Aliyun sem exigir um domínio personalizado, utilizando dois métodos principais: o EMAS Serverless static hosting (ideal para testes rápidos sem domínio) e OSS + GitHub Actions (para automação contínua). A skill orienta o usuário na inspeção do projeto, escolha da rota de implantação, preparação de credenciais (AccessKey, GitHub Secrets) e na geração automática de workflows do GitHub Actions. Também inclui scripts para verificar a prontidão do projeto e validar a URL implantada, garantindo que o site seja servido corretamente como HTML. Suporta plataformas como Aliyun, GitHub e o ambiente Codex, com ênfase em segurança (nunca solicitar secrets por chat) e clara separação entre etapas automatizadas e ações manuais obrigatórias (login, verificação de identidade, pagamento).

Funciona com~Claude Code✓Codex CLI~Cursor
npx skills add 784697524-ux/aliyun-static-site-deploy-skill

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que Implantação de Site Estático no Aliyun faz?

Regras Essenciais

  • Trate o EMAS Serverless static hosting como a rota padrão para pré-visualização sem domínio para novatos. Ele fornece ao usuário uma URL padrão do Aliyun e evita o problema comum de download do domínio padrão do OSS.
  • Trate o OSS + GitHub Actions como a rota de automação repetível somente quando o usuário explicitamente quiser automação do GitHub para o Aliyun, já tiver ou puder criar um bucket OSS, e entender que a URL final deve ser verificada para abrir inline como HTML.
  • Não finja que o login no Aliyun, a verificação de identidade real, a ativação de serviços pagos, a criação de AccessKey, o 2FA do GitHub ou a confirmação de cobrança podem ser automatizados. Pause e peça ao usuário para concluir essas etapas.
  • Nunca peça ao usuário para colar ALIYUN_ACCESS_KEY_SECRET, tokens do GitHub, senhas ou capturas de tela de pagamento no chat. Peça que digitem os segredos diretamente nos GitHub Secrets ou na interface do Aliyun/GitHub.

Primeira Decisão

Antes de escrever código de implantação, decida a rota e diga-a explicitamente:

RotaQuando UsarNível de AutomaçãoRisco
EMAS static hostingSem domínio personalizado, pré-visualização para novatos, o usuário pode operar o console do AliyunO agente prepara os arquivos e orienta os passos no console; o usuário lida com login/pagamento/upload se necessárioA interface do console pode mudar e pode exigir upload manual
Workflow OSSO usuário quer automação Codex X GitHub X Aliyun; bucket OSS e AccessKey podem ser preparadosO agente pode gerar o workflow, fazer push do código, acionar CI e verificar a URLOs domínios padrão do OSS podem baixar HTML a menos que os metadados/hosting estático estejam corretos

Se o usuário disser apenas "没有域名先给客户看", use a orientação do EMAS primeiro. Se o usuário disser "自动上线", "XgitX阿里云", "GitHub 自动部署" ou "以后反复更新", use os scripts do workflow OSS, mas explique o risco de verificação de download no navegador antes de prosseguir.

Fluxo de Trabalho

  1. Inspecione o projeto:
    python3 /Users/likai/.codex/skills/aliyun-static-site-deploy/scripts/check_readiness.py --project .
    
  2. Explique a rota de implantação em uma frase:
    • OSS: "Usar GitHub Actions para enviar para o OSS do Aliyun e verificar se o navegador não baixa o arquivo."
    • EMAS: "Primeiro usar o EMAS static hosting do Aliyun para obter uma URL de pré-visualização sem domínio."
  3. Se o usuário não preparou o acesso ao Aliyun, leia references/secrets-hand-off.md e peça para concluir login/pagamento/AccessKey/GitHub Secrets no Aliyun. Use capturas de tela incluídas ao explicar onde clicar.
  4. Apenas para automação OSS, gere o workflow do GitHub Actions:
    python3 /Users/likai/.codex/skills/aliyun-static-site-deploy/scripts/prepare_oss_workflow.py --project . --force
    
  5. Verifique novamente o workflow gerado e o projeto local:
    python3 /Users/likai/.codex/skills/aliyun-static-site-deploy/scripts/check_readiness.py --project . --strict
    
  6. Faça commit/push do projeto para o GitHub se o usuário solicitou e as credenciais estiverem disponíveis. Se o Git LSF estiver instalado incorretamente, use a saída do script para explicar a correção em vez de tentar cegamente novamente.
  7. Após a implantação terminar, verifique a URL pública:
    python3 /Users/likai/.codex/skills/aliyun-static-site-deploy/scripts/verify_deployed_url.py "$ALIYUN_SITE_URL"
    

Segredos Obrigatórios do GitHub

Para o workflow OSS incluído, peça ao usuário para criar estes segredos do repositório no GitHub:

  • ALIYUN_ACCESS_KEY_ID
  • ALIYUN_ACCESS_KEY_SECRET
  • ALIYUN_OSS_BUCKET
  • ALIYUN_OSS_ENDPOINT

Opcionais:

  • ALIYUN_SITE_URL para verificação no momento da implantação. Exemplo: https://seu-bucket.oss-cn-hangzhou.aliyuncs.com/index.html

Para EMAS, use os nomes exatos dos segredos exigidos pelo script de implantação EMAS naquele projeto. Se não houver script EMAS, não invente nomes de segredos falsos; oriente o usuário pelo upload manual do EMAS static hosting ou crie um script específico do projeto após confirmar o caminho oficial da API/SDK.

Limite Humano

Pare e chame o usuário quando algum destes itens estiver faltando:

  • A conta Aliyun não está logada, não foi verificada com nome real ou pede pagamento.
  • O espaço de serviço EMAS, o bucket OSS ou o static hosting não foram criados.
  • AccessKey não foi criado.
  • GitHub Secrets não foram preenchidos.
  • O GitHub pede nome de usuário/token ou confirmação de dois fatores.

Mostre ao usuário os campos exatos a preencher, mas não receba segredos no chat.

Critérios de Sucesso da Implantação

Considere a implantação incompleta até que todas as verificações passem:

  • O repositório GitHub tem o código-fonte do site commitado e instruções de implantação.
  • Para automação OSS, o repositório GitHub tem o workflow gerado em .github/workflows/deploy-aliyun-static-site.yml e a execução do Actions tem sucesso em main ou workflow_dispatch.
  • Para upload manual/static-hosting do EMAS, o console do Aliyun mostra os arquivos de homepage enviados e uma URL padrão pública.
  • A URL pública retorna HTTP 200 ou 3xx seguido de 200.
  • A resposta é HTML, não texto de erro XML ou metadados de download forçado.
  • A página contém <html e um título não vazio ou texto visível no corpo.
  • Os principais assets referenciados pela homepage são URLs públicas ou remotas.

Referências

  • Leia references/secrets-hand-off.md quando o usuário precisar de ajuda passo a passo com Aliyun/GitHub Secrets.
  • Leia references/troubleshooting.md quando a implantação ou verificação de URL falhar.

Habilidades Relacionadas