Essas instruções são mais voltadas para os desenvolvedores e administradores que desejam usar a "borda sangrando" de Foswiki. Recomendamos usar nossas distribuições embaladas. Veja nossa página de download
Você pode executar uma instância do Foswiki a partir deste clone simplesmente apontando o Apache nela. Veja o apacheConfiggenerator
Nota: A configuração foi completamente reescrita na filial principal. Foswiki agora é capaz de "Bootstrap" próprio sem uma configuração. Depois de pseudo-instalar as extensões padrão, aponte o navegador para o URL padrão para o novo site, conforme configurado no ApacheConfiggenerator. http://yoursite.com http://yoursite.com/foswiki http://yoursite.com/foswiki/bin/view
Para "instalar" as extensões em uma área de checkout, você deve usar o script pseudo-install.pl para instalá-las. No Unix/Linux, este script gera links suaves da árvore principal para as extensões, para que você possa trabalhar no seu código in situ e ver o impacto das alterações no seu Foswiki ao vivo sem precisar fazer uma etapa de instalação. O Windows não suporta links suaves, portanto, o script também pode ser executado no modo -copy (o padrão no Windows), mas, neste caso, você terá que executá -lo novamente cada vez que alterar sua extensão. Usar:
pseudo-install.pl default para instalar os contributores e plugins padrão (por exemplo, Extensions.twistycontrib, que é baseada em extensões.patternskin)pseudo-install.pl developer para instalar as extensões adicionais do desenvolvedor. A opção Desenvolvedor também instala todas as extensões padrão. Consulte o comentário do cabeçalho do script pseudo-install.pl (diretório principal do checkout) para obter opções e mais informações. Observe que pseudo-install.pl trabalha apenas com extensões que possuem um arquivo de manifesto, conforme exigido pelas extensões.buildcontrrib. Os exemplos de script abaixo são para bash Shell.
A situação típica é que você deseja executar um Foswiki pseudo-instalado na filial "Master". E se você desenvolver plugins, deseja ativar seu plug -in nesta instalação. Esta é a sequência inteira para verificar o ramo principal do Git e fazer o pseudo-instalação. Assumimos que você deseja executar sua instalação baseada no git em /var/www/foswiki
Os seguintes comandos conferem um Foswiki absolutamente mínimo (apenas o mapeamento do usuário padrão + padrão). Este é o menor check -out que será executado. As etapas são:
git clone https://github.com/foswiki/distro.git foswikicd core && ./pseudo-install.pl default cd /var/www
mkdir foswiki
git clone https://github.com/foswiki/distro.git foswiki
Cloning into 'foswiki'...
remote: Counting objects: 134190, done.
remote: Compressing objects: 100% (37847/37847), done.
remote: Total 134190 (delta 87343), reused 132136 (delta 85289)
Receiving objects: 100% (134190/134190), 66.86 MiB | 1.63 MiB/s, done.
Resolving deltas: 100% (87343/87343), done.
Checking connectivity... done.
# By default this will leave you in the "master" branch, where leading edge development happens
# If you want to use the current release branch, change to the Release01x01 branch
# Skip this step if you want to remain on the experimental master branch.
cd foswiki
git checkout Release01x01
Branch Release01x01 set up to track remote branch Release01x01 from origin.
Switched to a new branch 'Release01x01'
# The extensions have all been checked out one level up from the "core" directory
# the next step is to link / copy them into the installation. This is done with pseudo-install.
cd core
perl -T pseudo-install.pl default
Installing extensions: PatchFoswikiContrib, AutoViewTemplatePlugin, CompareRevisionsAddOn, CommentPlugin, EditTablePlugin, EmptyPlugin, FamFamFamContrib, HistoryPlugin, InterwikiPlugin, JSCalendarContrib, JQueryPlugin, MailerContrib, TablePlugin, TwistyPlugin, PatternSkin, PreferencesPlugin, RenderListPlugin, SlideShowPlugin, SmiliesPlugin, SpreadSheetPlugin, TipsContrib, WysiwygPlugin, TinyMCEPlugin, TopicUserMappingContrib, TWikiCompatibilityPlugin, core
Processing AutoViewTemplatePlugin
Linked data/System/AutoViewTemplatePlugin.txt
mkdir /var/www/fw/core/lib/Foswiki/Plugins
...
#...
#... A large amount of output is generated.
#... Errors about dependencies on foswiki extensions can generally be ignored.
#... The extensions are not installed in the order that would resolve all dependencies.
#...
# If necessary, change ownership of all files to the webserver user.
# In this case that is 'apache:apache', though it may also be 'www-data:www-data'
# e.g. on Debian and Ubuntu systems, or something else entirely. Check first.
chown -R apache:apache foswiki
# Now configure Apache to use the Foswiki in /var/www/foswiki/core
core/../foswiki.httpd.conffoswiki.httpd.conf do seu apache httpd.conf ou/etc/apache2/sites_enabled ou /etc/apache2/vhosts.d , ou /etc/apache2/Include ... verifique as instruções da distribuição local.Include /path/to/foswiki.httpd.conf+FollowSymLinks o log de erros Options Apache tiver muito Symbolic link not allowed or link target not accessible /var/www/foswiki/dev/core/pub Mensagens, provavelmente precisar Nesse ponto, se você apontar seu navegador para o seu URL do Foswiki, ele deve "apenas funcionar", mas exibirá um aviso de bootstrap no topo da configuração. Para configurar totalmente o Foswiki, visite o bin/configure o URL, resolva quaisquer avisos e erros e salve a configuração. CUIDADO: Depois de salvar a configuração, você não poderá usar a configuração novamente, a menos que tenha se registrado e se conceda a autoridade "Adimin". Você pode controlar quem pode usar o Configure definindo Security and Authentication -> Access Control {ConfigureFilter} . Quando essa opção é definida, ele substitui a verificação da autoridade do administrador e pode permitir que qualquer usuário, incluindo o usuário convidado, use o Configure. Portanto, tenha cuidado!.
De vez em quando, você deseja manter sua instalação sincronizada com a versão mais recente no repositório Foswiki Git. O script pseudo-instalação não é inteligente o suficiente para lidar com as alterações nos manifestos, portanto, essa é a maneira de ser atualizada à prova de idiotas. Primeiro, ele remove todos os links (ou arquivos copiados), buscando o git. E finalmente faz uma nova pseudo-instalação.
cd /var/www/foswiki/core
./pseudo-install.pl -uninstall all
git pull
./pseudo-install.pl default
chown -R apache:apache ..
Normalmente, apenas fazer a tração do git será suficiente, a menos que alguém tenha removido arquivos (e mesmo assim você geralmente pode ignorá -lo).
Se você é um desenvolvedor, também pode instalar o kit necessário para executar testes de unidade, passando o parâmetro developer para pseudo-install.pl
cd /var/www/foswiki/core
./pseudo-install.pl developer
Isso também instalará o BuildContrib e vários outros componentes úteis para os desenvolvedores.
Os testes de unidade são executados com as afirmações ativadas, mas o ambiente da Web ao vivo não. Para habilitar as afirmações, edite bin/LocalLib.cfg (se não estiver lá, crie-o copiando bin/LocalLib.cfg.txt ) e desative a seguinte linha
$ENV{FOSWIKI_ASSERTS} = 1;
Isso permite testes de validação adicionais que afetarão o desempenho, mas capturarão alguns problemas que podem ser perdidos durante o uso normal da Web.
Foswiki 1.2 não é mais envio com módulos CPAN. Agora é recomendável usar o gerenciador de pacotes do seu sistema, ou CPAN para instalar dependências. Consulte http://foswiki.org/system/systemReQuirements. No caso de você não conseguir instalar as dependências da CPAN, pseudo-Instalar o CPancontrib para obter as dependências específicas do estilo 1.x do estilo Foswiki. (CPancontrib ainda não foi liberado). Para testar esses módulos, o CPAN LIB Preparcending deve ser ativado em bin/locallib.cfg , descommentando a seguinte linha:
$CPANBASE = ''; # Uncommented: Default path prepended
. Veja os comentários em bin/LocalLib.cfg.txt para obter mais detalhes.
Provavelmente é melhor testar usando módulos de plataforma, bem como os módulos enviados.
Os comandos de exemplo acima descrevem como instalar um foswiki minimalista . O script de pseudo-instalação conhece alguns truques adicionais para usar com extensões que não são de zagueiros. Se você pseudo-instalar uma extensão que não está no momento, o Pseudo-Install clonará automaticamente a extensão do github usando https://github.com/foswiki/ExtensionName.git
NOTA: Embora usemos as filiais gerenciadas de liberação (Master, RELEANSEM01X00, RELESSEM01X01) na distribuição do núcleo Foswiki ("Distro"), as extensões não-defensivas normalmente têm apenas uma filial "mestre".
Veja como instalar uma extensão não padrão, usando anti-Wikispamplugin como exemplo:
cd foswiki/core
./pseudo-install.pl AntiWikiSpamPlugin
Useless use of E at ./pseudo-install.pl line 1553.
Useless use of E at ./pseudo-install.pl line 1553.
Installing extensions: AntiWikiSpamPlugin
Processing AntiWikiSpamPlugin
Trying clone from git://github.com/foswiki/AntiWikiSpamPlugin.git...
Cloning into 'AntiWikiSpamPlugin'...
remote: Counting objects: 489, done.
remote: Total 489 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (489/489), 86.42 KiB | 0 bytes/s, done.
Resolving deltas: 100% (185/185), done.
Checking connectivity... done.
Cloned AntiWikiSpamPlugin OK
Linked data/Main/AntiWikiSpamBypassGroup.txt
Linked data/System/AntiWikiSpamLocalList.txt
Linked data/System/AntiWikiSpamRegistrationWhiteList.txt
Linked data/System/AntiWikiSpamRegistrationBlackList.txt
Linked data/Sandbox/AntiWikiSpamTestTopic.txt
Linked data/System/AntiWikiSpamPlugin.txt
Linked lib/Foswiki/Plugins/AntiWikiSpamPlugin.pm
Linked lib/Foswiki/Plugins/AntiWikiSpamPlugin
Linked test/unit/AntiWikiSpamPlugin
Linked /var/www/fw/core/tools/develop/githooks/commit-msg as /var/www/fw/AntiWikiSpamPlugin/.git/hooks/commit-msg
Linked /var/www/fw/core/tools/develop/githooks/pre-commit as /var/www/fw/AntiWikiSpamPlugin/.git/hooks/pre-commit
Linked /var/www/fw/core/tools/develop/githooks/commit-msg as /var/www/fw/AntiWikiSpamPlugin/../.git/hooks/commit-msg
Linked /var/www/fw/core/tools/develop/githooks/pre-commit as /var/www/fw/AntiWikiSpamPlugin/../.git/hooks/pre-commit
AntiWikiSpamPlugin installed
Linked /var/www/fw/core/tools/develop/githooks/commit-msg as /var/www/fw/core/.git/hooks/commit-msg
Linked /var/www/fw/core/tools/develop/githooks/pre-commit as /var/www/fw/core/.git/hooks/pre-commit
Linked /var/www/fw/core/tools/develop/githooks/commit-msg as /var/www/fw/core/../.git/hooks/commit-msg
Linked /var/www/fw/core/tools/develop/githooks/pre-commit as /var/www/fw/core/../.git/hooks/pre-commit
Isso é útil se você mudou muitos manifestos ou tiver link manualmente com todos os arquivos e deseja remover qualquer link suave quebrado. Suponha que o seu check -out de porta -malas esteja em /var/www/foswiki . Você também precisará fazer isso ao alternar entre as ramificações de release01x01 e master.
find -L /var/www/foswiki/core -type l -exec rm {} ;
Você pode criar rápida e facilmente uma nova extensão usando o script create_new_extension.pl que é instalado no core quando você pseudo-instalar as extensões.buildcontrrib.
Se você estiver desenvolvendo um novo código, desejará configurar o ambiente de desenvolvimento e teste. Para isso, você precisará pseudo-instalação! BuildContrib ,! unittestContrib e! Testfixtureplugin.
./pseudo-install.pl developer
Então:
cd test/unit
export FOSWIKI_LIBS`/var/www/foswiki/core/lib
perl ../bin/TestRunner.pl FoswikiSuite
(ou equivalente no Windows)
Para detalhes completos, consulte http://foswiki.org/development/unittests#settingupatestenvironment