Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions .cpanel.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
# Tarefas do botao Deploy HEAD Commit do Git Version Control do cPanel.
# Pagina estatica: o Update from Remote ja troca os arquivos, e o deploy so
# confere e acerta as permissoes. O dominio aponta para a pasta public do clone.
deployment:
tasks:
- export REPO=$HOME/repositories/mapdisk
- echo "=== deploy em $REPO ==="
- cd $REPO && git log --oneline -1
- test -f $REPO/public/index.html
- test -f $REPO/public/.htaccess
- chmod 755 $REPO
- cd $REPO && find public -type d -exec chmod 755 {} \;
- cd $REPO && find public -type f -exec chmod 644 {} \;
- echo "=== deploy concluido ==="
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,6 @@ TreeSizeFreeSetup.exe

# Rascunhos locais
.superpowers/

# Gravado pelo servidor da hospedagem na pasta do site; deixa o clone do cPanel com alteracao pendente
error_log
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,4 +88,5 @@ No Prompt de Comando, use `start /wait mapdisk varrer C:` para o prompt esperar
| 6 | Relatório para o cliente avaliar: página, planilha e leitura da resposta | `relatorio-cliente` | Spec em [#11](https://github.com/manfredjr/mapdisk/pull/11), plano em [#12](https://github.com/manfredjr/mapdisk/pull/12), código em [#13](https://github.com/manfredjr/mapdisk/pull/13) | Concluída em 30/09/2026 |
| 7 | Duplicados: busca em três etapas, aba no painel e cópias no relatório para o cliente | `duplicados` | Plano em [#14](https://github.com/manfredjr/mapdisk/pull/14), código em [#15](https://github.com/manfredjr/mapdisk/pull/15) | Concluída em 01/10/2026 |
| 8 | Relatório do técnico em HTML com o gráfico, exportar pela janela, linha de comando completa, item "Analisar com MapDisk" no Explorer, tela de Opções e página do programa | `relatorio-e-integracao` | Plano em [#16](https://github.com/manfredjr/mapdisk/pull/16), código em [#17](https://github.com/manfredjr/mapdisk/pull/17) | Concluída em 01/10/2026 |
| - | Versão 1.0.0: troca a versão de 0.1.0 para 1.0.0, para a primeira Release | `versao-1-0-0` | [#19](https://github.com/manfredjr/mapdisk/pull/19) | Aguardando autorização para publicar |
| - | Versão 1.0.0: troca a versão de 0.1.0 para 1.0.0, para a primeira Release | `versao-1-0-0` | [#19](https://github.com/manfredjr/mapdisk/pull/19) | Publicada em 01/10/2026: [Release v1.0.0](https://github.com/manfredjr/mapdisk/releases/tag/v1.0.0) |
| - | Página do programa em mapdisk.manfred.com.br, pelo Git do cPanel | `publicar-pagina` | [#20](https://github.com/manfredjr/mapdisk/pull/20) | Aguardando autorização para publicar |
9 changes: 9 additions & 0 deletions public/.htaccess
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Pagina estatica do MapDisk - MT. Sem listagem de pasta e com cabecalhos de seguranca.
Options -Indexes
DirectoryIndex index.html

<IfModule mod_headers.c>
Header set X-Content-Type-Options "nosniff"
Header set Referrer-Policy "strict-origin-when-cross-origin"
Header set Content-Security-Policy "default-src 'self'; img-src 'self'; style-src 'self' 'unsafe-inline'; script-src 'none'; frame-ancestors 'none'; base-uri 'none'; form-action 'none'"
</IfModule>
13 changes: 13 additions & 0 deletions testes/mapdisk.testes/pagina-testes.cs
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,17 @@ public void Pagina_nao_usa_marca_de_terceiro()
{
Assert.DoesNotContain("treesize", File.ReadAllText(Publico("index.html")), StringComparison.OrdinalIgnoreCase);
}

[Fact]
public void Publicacao_confere_a_pagina_e_nao_expoe_a_conta()
{
var raiz = CaracteresProibidosTestes.RaizDoRepositorio();
var htaccess = File.ReadAllText(Publico(".htaccess"));
Assert.Contains("Options -Indexes", htaccess);
Assert.Contains("script-src 'none'", htaccess);
var deploy = File.ReadAllText(Path.Combine(raiz, ".cpanel.yml"));
Assert.Contains("test -f $REPO/public/index.html", deploy);
Assert.Contains("$HOME/repositories/mapdisk", deploy);
Assert.DoesNotContain("/home/", deploy);
}
}
Loading