Ini mengasumsikan Anda memiliki lingkungan GO yang berfungsi dengan pengaturan gopath env var, dan nodeJs dan npm terpasang:
sudo apt install nodejs-legacy npm snapcraft bzr
Instal Modul NPM Global Tanpa Sudo:
cat > ~/.npmrc <<-EOF
root = $HOME/node/lib/node_modules
prefix = $HOME/node
binroot = $HOME/node/bin
manroot = $HOME/node/man
EOF
Siapkan Lingkungan:
mkdir ~/node
export PATH=$PATH:$HOME/node/bin:$GOPATH/bin
export NODE_PATH=$HOME/node/lib/node_modules
Cabang:
mkdir -p $GOPATH/src/github.com/snapcore
cd $GOPATH/src/github.com/snapcore
git clone [email protected]:snapcore/snapweb.git
cd snapweb
Memasang:
# 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
Setelah Anda memiliki snap yang dibangun secara lokal, Anda dapat mengujinya pada sistem Anda dengan melakukan:
snap install snapweb_<version>.snap --dangerous
Bendera -Berangus diperlukan untuk memasang bidikan yang dibangun secara lokal, yang belum ditandatangani oleh toko.
Hubungkan ke antarmuka SnapWeb dengan URL ini: [http: // localhost: 4200/]
Snapweb akan secara otomatis mengarahkan kembali ke HTTPS di port 4201, menggunakan sertifikat yang ditandatangani sendiri.
PERINGATAN: Jika menguji Snapweb di dalam VM dengan port yang dialihkan, pastikan untuk terhubung langsung ke soket HTTPS, karena pengalihan HTTP tidak akan berfungsi.
Misalnya, memulai VM dengan:
kvm -m 768 -redir :8022::22 -redir :8201::4201 -hda snappy.img
Arahkan browser langsung ke [https: // localhost: 8201]
Perhatikan bahwa dalam semua kasus Anda sekarang akan memerlukan token akses untuk menggunakan Snapweb. Tergantung di mana Anda menginstal paket SNAP (secara lokal atau dalam VM) jalankan perintah berikut (mungkin melalui SSH dalam kasus VM):
sudo snapweb.generate-token
Kemudian salin/tempel token di Web UI saat diminta.
Untuk menginstal paket:
curl -H "Content-Type: application/json" -d '{"package":"xkcd-webserver"}' http://localhost:4200/api/v2/packages/
Untuk menghapus paket:
curl -X DELETE http://localhost:4200/api/v2/packages/xkcd-webserver
Untuk daftar paket:
curl http://localhost:4200/api/v2/packages/
Untuk mendapatkan paket tertentu:
curl http://localhost:4200/api/v2/packages/xkcd-webserver
Untuk menghasilkan godeps
.
go get launchpad.net/godeps
Untuk mendapatkan dependensi yang benar untuk proyek, jalankan:
godeps -t -u dependencies.tsv
Jika dependensi perlu diperbarui
godeps -t ./... > dependencies.tsv