Do you want to contribute to LemonLdap::NG project ?
On Debian developper station :
ssh-keygen -o -t rsa -b 4096 -C "your@email"
Go to your gitlab account : https://gitlab.ow2.org/profile/keys
cat ~/.ssh/id_rsa.pub
copy id_rsa.pub content to key section and enter a name into “Title” tans “Add key” button Test ssh connexion :
ssh -T git@gitlab.com
accept messages
root :
apt install aptitude aptitude install vim make devscripts yui-compressor git git-gui libjs-uglify coffeescript cpanminus aptitude install libauth-yubikey-webclient-perl libnet-smtp-server-perl cpanm Authen::U2F Authen::U2F::Tester Crypt::U2F::Server::Simple curl -sL https://deb.nodesource.com/setup_9.x | bash - apt-get install -y nodejs npm install -g protractor # end-2-end tests webdriver-manager update # install/update selenium driver
user :
git config --global user.name "Name Surname" git config --global user.email "your@mail" git config --global core.editor vim git config --global merge.tool vimdiff git config --global color.ui true git config --list
user : create directory in directory :
git clone git@gitlab.ow2.org://user///lemonldap-ng.git cd lemonldap-ng/ git log git checkout master # go to master branch git remote add upstream https://gitlab.ow2.org/lemonldap-ng/lemonldap-ng.git # to connect to remote branch git fetch upstream # import branch git checkout v2.0 # to change branch git fetch upstream
import version branch on linux station :
git checkout v2.0 git fetch upstream git rebase upstream/v2.0 # to align to parent project remote branch
on gitlab, create working branch, one per thematic on linux station :
git checkout workingbranch git log git status git commit -am "explanations (#number gitlab ticket)" git commit --amend file(s) # to modify a commit git rebase v2.0 # align local working branch to local 2.0 git checkout -- file(s) # revert git push # to send on remote working branch ! Only after doing some commits !
On gitlab, submit merge request when tests are corrects.
aptitude install libapache-session-perl libcache-cache-perl libclone-perl libconfig-inifiles-perl libconvert-pem-perl libcrypt-openssl-bignum-perl libcrypt-openssl-rsa-perl libcrypt-openssl-x509-perl libcrypt-rijndael-perl libdbi-perl libdigest-hmac-perl libemail-sender-perl libgd-securityimage-perl libhtml-template-perl libio-string-perl libjson-perl libmime-tools-perl libmouse-perl libnet-ldap-perl libplack-perl libregexp-assemble-perl libregexp-common-perl libsoap-lite-perl libstring-random-perl libunicode-string-perl liburi-perl libwww-perl libxml-simple-perl libxml-libxslt-perl libcrypt-urandom-perl libconvert-base32-perl aptitude install apache2 libapache2-mod-fcgid libapache2-mod-perl2 # install Apache aptitude install nginx nginx-extras # install Nginx aptitude install perltidy
SAML :
aptitude install liblasso-perl libglib-perl
make test # or manager_test, portal_test, ... to launch unit tests # Doing one unit test : ## Go to parent test directory cd ~/lemonldap-ng/lemonldap-ng-portal ## and execute the test : prove -v t/67-CheckUser.t # Using local platform : make start_web_server # TESTUSESSL=1 to enable SSL engine (only available for Apache) make start_web_server TESTWEBSERVER=nginx # to use Nginx web server make stop_web_server make reload_web_server # to reload LL:NG conf make clean # to clean test files make minify # to minify and compile coffeescript make json # to build conf and manager tree make manifest # to update manifest make tidy # to magnify perl files (perl best pratices) cd lemonldap-ng-portal && prove t/XXXX # To launch specific unit test