Isso pressupõe que você tenha um ambiente de funcionamento com uma configuração do Gopath Env var, e o NodeJS e o NPM instalados:
sudo apt install nodejs-legacy npm snapcraft bzr
Instale os módulos globais da NPM sem sudo:
cat > ~/.npmrc <<-EOF
root = $HOME/node/lib/node_modules
prefix = $HOME/node
binroot = $HOME/node/bin
manroot = $HOME/node/man
EOF
Configure o ambiente:
mkdir ~/node
export PATH=$PATH:$HOME/node/bin:$GOPATH/bin
export NODE_PATH=$HOME/node/lib/node_modules
Filial:
mkdir -p $GOPATH/src/github.com/snapcore
cd $GOPATH/src/github.com/snapcore
git clone [email protected]:snapcore/snapweb.git
cd snapweb
Instalar:
# this script does a npm install using yarn and fixes some extra issues
# with dependencies
./scripts/npm-install.sh
./scripts/get-go-deps.sh
cd $GOPATH/src/github.com/snapcore/snapweb
# omit the architecture specified below ('amd64') to build for all architectures at once
./build.sh amd64
Depois de criar um snap localmente, você pode testá -lo em seu sistema fazendo:
snap install snapweb_<version>.snap --dangerous
O sinalizador -Daganouss é necessário para a instalação de snaps construídos localmente, que não foram assinados pela loja.
Conecte -se à interface Snapweb com este URL: [http: // localhost: 4200/]
O SnapWeb redirecionará automaticamente para HTTPS na porta 4201, usando um certificado autoassinado.
AVISO: Se testar o SnapWeb dentro de uma VM com portas redirecionadas, não se esqueça de conectar -se diretamente ao soquete HTTPS, pois o redirecionamento HTTP não funcionará.
Por exemplo, iniciando uma VM com:
kvm -m 768 -redir :8022::22 -redir :8201::4201 -hda snappy.img
Aponte o navegador diretamente para [https: // localhost: 8201]
Observe que, em todos os casos, agora você precisará de um token de acesso para usar o SnapWeb. Dependendo de onde você instalou o pacote Snap (localmente ou em uma VM), execute o seguinte comando (possivelmente via SSH no caso de uma VM):
sudo snapweb.generate-token
Em seguida, copie/cole o token na interface do usuário da web quando solicitado.
Para instalar um pacote:
curl -H "Content-Type: application/json" -d '{"package":"xkcd-webserver"}' http://localhost:4200/api/v2/packages/
Para desinstalar um pacote:
curl -X DELETE http://localhost:4200/api/v2/packages/xkcd-webserver
Para listar os pacotes:
curl http://localhost:4200/api/v2/packages/
Para obter um pacote específico:
curl http://localhost:4200/api/v2/packages/xkcd-webserver
Para gerar dependências.TSV, você precisa de godeps
, então
go get launchpad.net/godeps
Para obter as dependências corretas para o projeto, execute:
godeps -t -u dependencies.tsv
Se as dependências precisam atualizar
godeps -t ./... > dependencies.tsv