mirror of
https://github.com/wekan/wekan.git
synced 2025-04-20 20:17:16 -04:00
241 lines
8.8 KiB
YAML
241 lines
8.8 KiB
YAML
name: wekan
|
||
version: '7.08'
|
||
base: core20
|
||
summary: Open Source kanban
|
||
description: |
|
||
WeKan ® is an Open Source and collaborative kanban board application.
|
||
|
||
Whether you’re maintaining a personal todo list, planning your holidays with some friends, or working in a team on your next revolutionary idea, Kanban boards are an unbeatable tool to keep your things organized. They give you a visual overview of the current state of your project, and make you productive by allowing you to focus on the few items that matter the most.
|
||
Depending on target environment, some configuration settings might need to be adjusted.
|
||
For full list of configuration options call:
|
||
$ wekan.help
|
||
|
||
confinement: strict
|
||
grade: stable
|
||
|
||
architectures:
|
||
- amd64
|
||
|
||
plugs:
|
||
mongodb-plug:
|
||
interface: content
|
||
target: $SNAP_DATA/shared
|
||
|
||
hooks:
|
||
configure:
|
||
plugs:
|
||
- network
|
||
- network-bind
|
||
|
||
slots:
|
||
mongodb-slot:
|
||
interface: content
|
||
write:
|
||
- $SNAP_DATA/share
|
||
|
||
apps:
|
||
wekan:
|
||
command: ./bin/wekan-control
|
||
daemon: simple
|
||
plugs: [network, network-bind]
|
||
|
||
mongodb:
|
||
command: ./bin/mongodb-control
|
||
daemon: simple
|
||
plugs: [network, network-bind]
|
||
|
||
caddy:
|
||
command: ./bin/caddy-control
|
||
daemon: simple
|
||
plugs: [network, network-bind]
|
||
|
||
help:
|
||
command: ./bin/wekan-help
|
||
|
||
database-backup:
|
||
command: ./bin/mongodb-backup
|
||
plugs: [network, network-bind]
|
||
|
||
database-list-backups:
|
||
command: ./bin/database-list-backups
|
||
|
||
database-restore:
|
||
command: ./bin/mongodb-restore
|
||
plugs: [network, network-bind]
|
||
|
||
parts:
|
||
mongodb:
|
||
source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-6.0.8.tgz
|
||
plugin: dump
|
||
stage-packages:
|
||
- libssl1.1
|
||
- libcurl4
|
||
- libstemmer0d
|
||
- zlib1g
|
||
- libsnappy1v5
|
||
- libyaml-cpp0.6
|
||
- libpcre3
|
||
- libpcrecpp0v5
|
||
- libboost-system1.71.0
|
||
- libboost-iostreams1.71.0
|
||
- libboost-filesystem1.71.0
|
||
- libboost-program-options1.71.0
|
||
- libgoogle-perftools4
|
||
filesets:
|
||
mongo:
|
||
- bin
|
||
- usr
|
||
stage:
|
||
- $mongo
|
||
prime:
|
||
- $mongo
|
||
|
||
# mongosh:
|
||
# source: https://downloads.mongodb.com/compass/mongodb-mongosh_1.6.2_amd64.deb
|
||
# plugin: dump
|
||
|
||
# mongotools:
|
||
# source: https://fastdl.mongodb.org/tools/db/mongodb-database-tools-ubuntu2004-x86_64-100.6.1.tgz
|
||
# plugin: dump
|
||
|
||
# mongodb44:
|
||
# source: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-4.4.18.tgz
|
||
# plugin: dump
|
||
# organize:
|
||
# bin: mongo44bin
|
||
# usr: mongo44usr
|
||
# stage:
|
||
# - -init
|
||
|
||
wekan:
|
||
source: .
|
||
plugin: npm
|
||
npm-node-version: 14.21.3
|
||
## Node.js 14.21.4 from Meteor only exists URL below where it's downloaded and installed.
|
||
## It does not exists in that npm-node-version above.
|
||
#npm-packages:
|
||
# - node-gyp
|
||
# - node-pre-gyp
|
||
# - fibers
|
||
build-packages:
|
||
- build-essential
|
||
- ca-certificates
|
||
- apt-utils
|
||
# - python2
|
||
- python3
|
||
- g++
|
||
- capnproto
|
||
- curl
|
||
- wget
|
||
- unzip
|
||
- execstack
|
||
- nodejs
|
||
- npm
|
||
# - p7zip-full
|
||
stage-packages:
|
||
- libfontconfig1
|
||
override-build: |
|
||
echo "Cleaning environment first"
|
||
#rm -rf ~/.meteor ~/.npm /usr/local/lib/node_modules
|
||
rm -rf .build
|
||
#echo "Using http npm packages so speedup install process https://stackoverflow.com/questions/39760113/callback-called-more-than-once-while-running-npm-install"
|
||
#echo "registry=http://registry.npmjs.org/" > ~/.npmrc
|
||
#echo "Installing npm, node-gyp, node-pre-gyp, fibers"
|
||
#npm -g install n --unsafe-perm
|
||
#n 14.21.4
|
||
#npm -g install node-gyp --unsafe-perm
|
||
#npm -g install node-pre-gyp --unsafe-perm
|
||
#npm -g install fibers --unsafe-perm
|
||
##echo "Installing meteor"
|
||
##curl https://install.meteor.com/ -o install_meteor.sh
|
||
##chmod +x install_meteor.sh
|
||
##sh install_meteor.sh
|
||
##rm install_meteor.sh
|
||
#npm -g install meteor --unsafe-perm --allow-superuser
|
||
#rm -rf .build
|
||
##chmod u+w *.json
|
||
#npm install --unsafe-perm
|
||
##npm install
|
||
##meteor build .build --directory --allow-superuser
|
||
# Remove legacy webbroser bundle, so that Wekan works also at Android Firefox, iOS Safari, etc.
|
||
##rm -rf .build/bundle/programs/web.browser.legacy
|
||
# Change to directory .build/bundle/programs/server
|
||
##cd .build/bundle/programs/server
|
||
##chmod u+w *.json
|
||
#npm install --unsafe-perm
|
||
##npm install
|
||
##cd node_modules/fibers
|
||
##node build.js
|
||
##cd ../../../../../..
|
||
# Cleanup
|
||
mkdir .build
|
||
cd .build
|
||
wget https://github.com/wekan/wekan/releases/download/v7.08/wekan-7.08-amd64.zip
|
||
unzip wekan-7.08-amd64.zip
|
||
rm wekan-7.08-amd64.zip
|
||
cd ..
|
||
##cd .build/bundle
|
||
##find . -type d -name '*-garbage*' | xargs rm -rf
|
||
##find . -name '*phantom*' | xargs rm -rf
|
||
##find . -name '.*.swp' | xargs rm -f
|
||
##find . -name '*.swp' | xargs rm -f
|
||
##cd ../..
|
||
# Add fibers multi arch
|
||
#cd .build/bundle/programs/server/node_modules/fibers/bin
|
||
#curl https://releases.wekan.team/fibers-multi.7z -o fibers-multi.7z
|
||
#7z x fibers-multi.7z
|
||
#rm fibers-multi.7z
|
||
#cd ../../../../../../..
|
||
# Copy to Snap
|
||
wget https://github.com/wekan/node-v14-esm/releases/download/v14.21.4/node-v14.21.4-linux-x64.tar.xz
|
||
tar -xf node-v14.21.4-linux-x64.tar.xz node-v14.21.4-linux-x64/bin/node
|
||
rm node-v14.21.4-linux-x64.tar.xz
|
||
mkdir $SNAPCRAFT_PART_INSTALL/bin
|
||
cp -p node-v14.21.4-linux-x64/bin/node $SNAPCRAFT_PART_INSTALL/bin/
|
||
rm -rf node-v14.21.4-linux-x64
|
||
cp -r .build/bundle/* $SNAPCRAFT_PART_INSTALL/
|
||
cp .build/bundle/.node_version.txt $SNAPCRAFT_PART_INSTALL/
|
||
rm -f $SNAPCRAFT_PART_INSTALL/lib/node_modules/wekan
|
||
#rm -f $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/meteor/rajit_bootstrap3-datepicker/lib/bootstrap-datepicker/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs
|
||
# Delete phantomjs that is in accounts-lockout
|
||
#rm -rf $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/meteor/lucasantoniassi_accounts-lockout/node_modules/phantomjs-prebuilt
|
||
# Delete temporary files
|
||
#rm -f $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/tar/lib/.mkdir.js.swp
|
||
#rm -f $SNAPCRAFT_PART_INSTALL/lib/node_modules/node-pre-gyp/node_modules/tar/lib/.mkdir.js.swp
|
||
#rm -f $SNAPCRAFT_PART_INSTALL/lib/node_modules/node-gyp/node_modules/tar/lib/.mkdir.js.swp
|
||
# Meteor 1.8.x additional .swp remove
|
||
#rm -f $SNAPCRAFT_PART_INSTALL/programs/server/node_modules/node-pre-gyp/node_modules/tar/lib/.mkdir.js.swp
|
||
# Delete fibers for other archs
|
||
#rm -rf $SNAPCRAFT_PART_INSTALL/programs/server/node_modules/fibers/bin/linux-ia32*
|
||
# ostrio tmp remove
|
||
#rm -rf $SNAPCRAFT_PART_INSTALL/programs/server/npm/node_modules/meteor/ostrio_files/node_modules/request-libcurl/.node_modules-garbage*
|
||
|
||
organize:
|
||
README: README.wekan
|
||
prime:
|
||
- -lib/node_modules/node-pre-gyp/node_modules/tar/lib/.unpack.js.swp
|
||
- -lib/node_modules/weka*
|
||
|
||
helpers:
|
||
source: snap-src
|
||
plugin: dump
|
||
|
||
caddy:
|
||
plugin: dump
|
||
## Caddy v1 is not developed anymore. TODO: Sometime migrate to Caddy v2.
|
||
## https://caddy.community/t/caddyfile-v1-adapter/9129
|
||
## https://github.com/caddyserver/caddy/tree/v1
|
||
#source: https://caddyserver.com/download/linux/amd64?license=personal&telemetry=off
|
||
#source-type: tar
|
||
# Using last working binary that was downloaded from above URL to Wekan Snap,
|
||
# and .txt files from https://github.com/caddyserver/caddy/tree/v1/dist
|
||
source: https://wekan.github.io/caddy-v1-linux-amd64.7z
|
||
source-type: 7z
|
||
organize:
|
||
caddy: bin/caddy
|
||
CHANGES.txt: CADDY_CHANGES.txt
|
||
EULA.txt: CADDY_EULA.txt
|
||
LICENSES.txt: CADDY_LICENSES.txt
|
||
README.txt: CADDY_README.txt
|
||
stage:
|
||
- -init
|