Mudanças entre as edições de "Mediawiki Reboot"

De Garoa Hacker Clube
Ir para navegação Ir para pesquisar
 
(11 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
 
==Objetivo principal==
 
==Objetivo principal==
O objetivo principal deste projeto é atualizar o [[wpt:Mediawiki|Mediawiki]] - software que roda o [[wiki]] do Garoa para a versão mais recente (a nossa é de 2011).
+
O objetivo principal deste projeto é atualizar o [[wpt:Mediawiki|Mediawiki]] - software que roda o [[wiki]] do Garoa para a versão mais recente (a nossa é de 2011).
  +
  +
[[mw:Manual:Upgrading]]
   
 
==Objetivos secundários==
 
==Objetivos secundários==
Linha 40: Linha 42:
 
===Mediawiki/skin/home===
 
===Mediawiki/skin/home===
 
* A ideia é usar Bootstrap e/ou uma skin que use bootstrap:
 
* A ideia é usar Bootstrap e/ou uma skin que use bootstrap:
** Solução adotada: [[mw:Skin:Chameleon]] + [https://bootswatch.com/flatly/ Bootswatch Flatly] + [[MediaWiki:Common.css|customizações CSS]]
+
** Solução adotada: [[mw:Skin:Chameleon]] + [https://bootswatch.com/flatly/ Bootswatch Flatly] + [[MediaWiki:Chameleon.css|customizações CSS]]
 
* TODO:
 
* TODO:
 
** <del>BUG: ícone usuário some na navbar (pois tem a mesma cor)</del>
 
** <del>BUG: ícone usuário some na navbar (pois tem a mesma cor)</del>
Linha 67: Linha 69:
 
** FEATURE: link para o tumblr
 
** FEATURE: link para o tumblr
 
** FEATURE: usar botões do Bootstrap na página de submeter alterações
 
** FEATURE: usar botões do Bootstrap na página de submeter alterações
** FEATURE: deixar o site minimamente compatível com a skin antiga (tipo, se algum dia a skin nova deixar de ser mantida, etc, failsafe)
+
** <del>FEATURE: deixar o site minimamente compatível com a skin antiga (tipo, se algum dia a skin nova deixar de ser mantida, etc, failsafe)</del>
*** mover todo o CSS de customização da skin para um arquivo CSS/less separado e carregar no config
+
*** <del>mover todo o CSS de customização da skin para um arquivo CSS/less separado e carregar no config</del> movidas para a página MediaWiki:skin.css da skin
*** deixar no Common.css apenas configurações que não quebrem a skin, independente de qual ela seja
+
*** <del>deixar no Common.css apenas configurações que não quebrem a skin, independente de qual ela seja</del> FEITO
*** mover overrides de $egChameleonExternalLessVariables para o arquivo do item anterior
+
*** <del>mover overrides de $egChameleonExternalLessVariables para o arquivo do item anterior</del> desencana!
*** deixar logo condicional à skin usada pelo usuário
+
*** <del>deixar logo condicional à skin usada pelo usuário</del>
*** liberar usuário para escolher skins (Chameleon ou Vector)
+
*** <del>liberar usuário para escolher skins (Chameleon ou Vector)</del> FEITO
 
** TASK: Revisar o LocalSettings.php
 
** TASK: Revisar o LocalSettings.php
   
 
*TODO extensões (mínimo):
 
*TODO extensões (mínimo):
** procurar páginas com tags shtml
+
** procurar páginas com tags shtml [https://garoa.net.br/w/index.php?title=Especial:Busca&search=shtml&fulltext=Pesquisar&profile=all aqui]
 
** Instalar NamespaceHTML e verificar o que pode quebrar
 
** Instalar NamespaceHTML e verificar o que pode quebrar
 
** Migrar shtml para namespace html
 
** Migrar shtml para namespace html
Linha 85: Linha 87:
 
* <del>StubManager - dep da anterior</del> '''DEPRECATED'''
 
* <del>StubManager - dep da anterior</del> '''DEPRECATED'''
 
* <del>ParserFunctionsHelper - idem</del> '''DEPRECATED'''
 
* <del>ParserFunctionsHelper - idem</del> '''DEPRECATED'''
* BreadCrumbs - para breadcrumbs
+
* <del>BreadCrumbs - para breadcrumbs</del> '''DEPRECATED'''
 
* Wikilog - usada no [[Blog]] - atualizar p/ 1.3
 
* Wikilog - usada no [[Blog]] - atualizar p/ 1.3
* bannedips.php - parece útil (não tem nativo no mw?)
+
* bannedips.php - parece deixar o mw lento - olhar no manual do mediawiki, deixar por enquanto
 
* <del>ReCaptcha - comentada</del> Aparentemente já vem embutida agora
 
* <del>ReCaptcha - comentada</del> Aparentemente já vem embutida agora
 
* <del>ConfirmEdit - comentada</del> Agora é nativo do mw?
 
* <del>ConfirmEdit - comentada</del> Agora é nativo do mw?
Linha 94: Linha 96:
   
 
====Novas extensões====
 
====Novas extensões====
  +
;Essencial:
 
* [[mw:Extension:Bootstrap]] - OK
 
* [[mw:Extension:Bootstrap]] - OK
 
* [[mw:Extension:NamespaceHTML]] restringe rawHTML a determinado(s) namespace(s). [[mw:Manual:Preventing_access#1.10_upwards|Como restringir acesso de edição em um namespace]].
 
* [[mw:Extension:NamespaceHTML]] restringe rawHTML a determinado(s) namespace(s). [[mw:Manual:Preventing_access#1.10_upwards|Como restringir acesso de edição em um namespace]].
  +
* [[mw:Extension:Widgets]] - talvez seja melhor usar essa
  +
;Necessário:
  +
* [[mw:Extension:SpamBlackList]]
  +
;Útil
  +
* [[mw:Extension:MobileFrontend]] - bonito em celular
 
* [[mw:Extension:Media_Viewer]] - Esqueminha bonito de mostrar fotos em um artigo
 
* [[mw:Extension:UploadWizard]] - facilita upload de vários arquivos
  +
* [[mw:Extension:Nuke]] - admins podem apagar páginas em massa (em caso de spam)
  +
;Cosmético
 
* Extensão para fórmulas matemáticas (LaTeX) - acho que é só habilitar
 
* Extensão para fórmulas matemáticas (LaTeX) - acho que é só habilitar
 
* Semantic Mediawiki (?)
 
* Semantic Mediawiki (?)
Linha 101: Linha 113:
 
* [[mw:Extension:SyntaxHighlight_GeSHi]] - code highlighting
 
* [[mw:Extension:SyntaxHighlight_GeSHi]] - code highlighting
 
* [[mw:Extension:Interwiki]] - extensão para gerenciar interwikis pela interface gráfica
 
* [[mw:Extension:Interwiki]] - extensão para gerenciar interwikis pela interface gráfica
* [[mw:Extension:Media_Viewer]] - Esqueminha bonito de mostrar fotos em um artigo
 
* [[mw:Extension:UploadWizard]] - facilita upload de vários arquivos
 
 
* [[mw:VisualEditor:Welcome|Visual Editor]] - editor WYSIWYG
 
* [[mw:VisualEditor:Welcome|Visual Editor]] - editor WYSIWYG
  +
* [[mw:Extension:CategoryTree]] - navigate category tree
 
* Alguma extensão para "albuns" de imagens
 
* Alguma extensão para "albuns" de imagens
  +
* Extensão que adicione tema de ícones [https://github.com/FortAwesome/Font-Awesome FontAwesome] - ver https://fortawesome.github.io/Font-Awesome/get-started/ -> PRO
 
* Ideias de extensões em [[wen:Special:Version]]
 
* Ideias de extensões em [[wen:Special:Version]]
   
Linha 115: Linha 127:
 
* Copiar tudo da homolog, exceto pasta images
 
* Copiar tudo da homolog, exceto pasta images
 
* Copiar images da antiga prod para a nova prod
 
* Copiar images da antiga prod para a nova prod
* Copiar LocalSettings.php (alterar BD)
+
* Copiar LocalSettings.php (alterar BD e inicialmente deixar vector como padrão)
* Copiar Common.css da homolog
+
* Copiar {Common,Vector,Chameleon}.css da homolog
 
* Copiar Página Principal da homolog
 
* Copiar Página Principal da homolog
 
* Copiar outras páginas alteradas da homolog (Eventos Regulares, Links, Lojas, Sidebar, Status) - verificar mudanças recentes
 
* Copiar outras páginas alteradas da homolog (Eventos Regulares, Links, Lojas, Sidebar, Status) - verificar mudanças recentes
Linha 125: Linha 137:
   
 
===Pós migração===
 
===Pós migração===
* Avaliar necessidade de namespaces
+
* <del>Avaliar necessidade de namespaces</del> FEITO. Inútil
* Consertar/apagar páginas do namespace interno (desabilitar namespace, apagar página, habilitar de novo)
+
* <del>Consertar/apagar páginas do namespace interno (desabilitar namespace, apagar página, habilitar de novo)</del> REMOVIDO
   
 
==Ideias esparsas==
 
==Ideias esparsas==
Linha 134: Linha 146:
   
 
==Ideias abandonadas==
 
==Ideias abandonadas==
** <del>[http://www.mediawikibootstrapskin.co.uk/ Bootstrapskin] - Não é muito bonita, mas é funcional. Não parece suportar a sidebar customizável do mediawiki</del>
+
** <del>[http://www.mediawikibootstrapskin.co.uk/ Bootstrapskin]</del> - <del>Não é muito bonita, mas é funcional. Não parece suportar a sidebar customizável do mediawiki</del>
 
** <del>[http://www.mediawikibootstrapskin.co.uk/nexus/ Nexus] - do mesmo desenvolvedor da anterior, bem mais bonita. Licenciamento obscuro</del>
 
** <del>[http://www.mediawikibootstrapskin.co.uk/nexus/ Nexus] - do mesmo desenvolvedor da anterior, bem mais bonita. Licenciamento obscuro</del>
 
** <del>Bootstrapskin >= 1.0.45 tem uma skin minimalista para mobile</del>
 
** <del>Bootstrapskin >= 1.0.45 tem uma skin minimalista para mobile</del>

Edição atual tal como às 21h50min de 6 de novembro de 2016

Objetivo principal

O objetivo principal deste projeto é atualizar o Mediawiki - software que roda o wiki do Garoa para a versão mais recente (a nossa é de 2011).

mw:Manual:Upgrading

Objetivos secundários

  • Testar o backup feito atualmente - suspeito que ele só salve o banco e não os arquivos de upload
    • aparentemente, o contrário! Não encontrei o backup do banco, apesar de o Wagner afirmar em um e-mail para a lista do CMC de 06 Mar 2014 que o script do servidor dele faz backup do banco.
    • ao tentar fazer um dump do banco com o comando do Wagner, encontrei o seguinte erro:
 Access denied; you need (at least one of) the RELOAD privilege(s) for this operation 
    • isso deve ter sido uma configuração que mudou ao longo do tempo e o script não acompanhou
    • workaround é executar o dump com usuário root
  • Fazer um backup completo do site e restaurá-lo, documentando o processo. Em outras palavras, checar a sanidade do backup.
    • backup feito e restore feito, falta verificar a sanidade do processo como um todo
  • Tentar resolver o problema do memcached
  • mover coisas como crachá, biblio, etc para outro diretório/vhost tipo foo.garoa.net.br ou dev.garoa.net.br
  • melhorar o visual do site

Checklist

Cronograma geral Homolog

  • apagar dados do homolog.garoa.net.br FEITO
  • copiar para o homolog.garoa.net.br FEITO
  • instalação mw FEITO
  • arquivos upload FEITO
  • banco de dados FEITO
  • reabilitar SHTML para botões do pagseguro, ou procurar outra alternativa FEITO
  • Documentar instalação atual (quais extensões e porque) EM CURSO
  • Fazer backup produção FEITO
  • Restaurar backup no homolog.garoa.net.br FEITO
  • Atualizar mw FEITO
  • Atualizar extensões EM CUSRO
  • Remover extensões desnecessárias EM CURSO
  • Instalar novas extensões EM CURSO
  • Instalar nova skin FEITO
  • Testar EM CURSO
  • Criar um arquivo README documentando as extensões
  • limpar pasta 'ghc'
  • BUG: Status deveria rodar no riverraid (privacy concerns)
  • migrar outros serviços (que não sejam do wiki) para domínio riverraid.garoa.net.br ou sua respectiva pasta de virtual host

Mediawiki/skin/home

  • A ideia é usar Bootstrap e/ou uma skin que use bootstrap:
  • TODO:
    • BUG: ícone usuário some na navbar (pois tem a mesma cor)
    • BUG: Consertar alinhamento geral (ex: links no final extrapolam a página, se colunas somarem 12 extrapolam o body do mediawiki)
    • BUG: botão "saiba mais" tem combinação de cores ruim (rever paleta)
    • BUG: retirar sublinhado onHover nos links que são botões
    • BUG: imagens extrapolam largura no mobile
    • BUG: imagem do lab de eletrônica é muito hermética, segundo Juca
    • FEATURE:Tornar o site mobile friendly (responsivo)
    • FEATURE: Mover o menu "ferramentas de páginas" para um ícone "escrevendo na página" com dropdown e alinhá-lo fora do menu principal
    • FEATURE: colocar de volta o Garoando há no rodapé
    • FEATURE: disponibilizar a fonte Garoa Hacker Clube Bold (e respectiva classe) para o site via CSS
    • DUVIDA:pedir opinião do Tony sobre fontes e logo/elementos gráficos OK
    • BUG: consertar o alinhamento do logo
    • DUVIDA: ver qual logo será colocado no topo gostei de apenas "Garoa"
    • DUVIDA: o logo "oficial" precisa ficar em algum lugar(?) Não
    • IDEIA: testar com outros esquemas de cor do bootswatch
    • BUG: tem muito verde? NÃO
    • BUG: Status no appspot não é criptografado - alterado para https
    • BUG: logo verde do status aberto some no site (ou tem muito verde no site?) não.
    • BUG: pega fontes via API do Google, privacy concerns. Como resolver: baixar as fontes e deixar no servidor
    • BUG: pega imagem do Creative Commons.org, privacy concerns
    • FEATURE: transformar links no rodapé (imprimir, link permanente, etc) em glyphicons
    • FEATURE: carroussel com logos de eventos
    • FEATURE: carroussel ou grid com fotos legais
    • FEATURE: link para o tumblr
    • FEATURE: usar botões do Bootstrap na página de submeter alterações
    • FEATURE: deixar o site minimamente compatível com a skin antiga (tipo, se algum dia a skin nova deixar de ser mantida, etc, failsafe)
      • mover todo o CSS de customização da skin para um arquivo CSS/less separado e carregar no config movidas para a página MediaWiki:skin.css da skin
      • deixar no Common.css apenas configurações que não quebrem a skin, independente de qual ela seja FEITO
      • mover overrides de $egChameleonExternalLessVariables para o arquivo do item anterior desencana!
      • deixar logo condicional à skin usada pelo usuário
      • liberar usuário para escolher skins (Chameleon ou Vector) FEITO
    • TASK: Revisar o LocalSettings.php
  • TODO extensões (mínimo):
    • procurar páginas com tags shtml aqui
    • Instalar NamespaceHTML e verificar o que pode quebrar
    • Migrar shtml para namespace html

Extensões

Atuais

  • SecureHTML - permite adiciona html arbitrário em páginas de modo seguro, usada para botões do pagseguro e webclient IRC DEPRECATED
  • StubManager - dep da anterior DEPRECATED
  • ParserFunctionsHelper - idem DEPRECATED
  • BreadCrumbs - para breadcrumbs DEPRECATED
  • Wikilog - usada no Blog - atualizar p/ 1.3
  • bannedips.php - parece deixar o mw lento - olhar no manual do mediawiki, deixar por enquanto
  • ReCaptcha - comentada Aparentemente já vem embutida agora
  • ConfirmEdit - comentada Agora é nativo do mw?
  • EmbedVideo - broken, achar substituta
  • QuestyCaptcha - é a classe de captcha que estamos usando agora. Mas me parece fraca. Um humano pode ensinar um robô a quebrá-la facilmente.

Novas extensões

Essencial
Necessário
Útil
Cosmético

Plano de migração para produção

  • Anunciar migração na lista 3 dias antes
  • Colocar wiki em readonly mode $wgReadOnly = 'Upgrading to MediaWiki 1.24.2';
  • Fazer backup completo (pasta do MW e BD ghc_wiki)
  • Testar sanidade do backup completo
  • Criar nova pasta (nova-prod)
  • Copiar tudo da homolog, exceto pasta images
  • Copiar images da antiga prod para a nova prod
  • Copiar LocalSettings.php (alterar BD e inicialmente deixar vector como padrão)
  • Copiar {Common,Vector,Chameleon}.css da homolog
  • Copiar Página Principal da homolog
  • Copiar outras páginas alteradas da homolog (Eventos Regulares, Links, Lojas, Sidebar, Status) - verificar mudanças recentes
  • apagar redirect Falaqueeuteescuto
  • testar
    • if success remover pasta produção antiga e apontar nova para lá
    • else restore backup

Pós migração

  • Avaliar necessidade de namespaces FEITO. Inútil
  • Consertar/apagar páginas do namespace interno (desabilitar namespace, apagar página, habilitar de novo) REMOVIDO

Ideias esparsas

  • usar blockquote para alguma frase célebre
  • ideia: taguear logos do tony com Categoria:Logos do Tony FEITO
    • IDEA: conteúdo mais dinâmico (ex, atualizações do tumblr)

Ideias abandonadas

    • Bootstrapskin - Não é muito bonita, mas é funcional. Não parece suportar a sidebar customizável do mediawiki
    • Nexus - do mesmo desenvolvedor da anterior, bem mais bonita. Licenciamento obscuro
    • Bootstrapskin >= 1.0.45 tem uma skin minimalista para mobile