-
Notifications
You must be signed in to change notification settings - Fork 0
License
hackEns/syncgitlabhub
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Tested with OCaml 4.02.1.
Below is the Eliom default readme, it explains their custom build system.
Maybe we should switch to cmake.
Hacking syncgit
---------------
Some python code to generate post requests
import json
import requests
url = "http://localhost:8080/hackEns/PassPartout"
r = requests.post(url, data=json.dumps({"repository":{"name":"PassPartout","git_http_url":"https://git.eleves.ens.fr/hackens/PassManager.git"}}))
# then you can see the server answer, for instance in r.content
Install the required module, with opam: ocsigenserver, eliom, config-file, yojson
GitLab docs
-----------
Available for every gitlab instance, but you can quickly see
it at https://git.eleves.ens.fr/help/web_hooks/web_hooks.
Tricks to compile ocaml code
----------------------------
To use Lwt, Thread, and Unix together:
ocamlfind ocamlc -package lwt -thread unix.cma threads.cma bigarray.cma lwt.cma lwt-unix.cma syncgitcore.ml syncgitpush.ml
Issues
------
Only sync the master branch of every git repository at this moment.
Instructions
============
This project is (initially) generated by eliom-distillery as the basic
project "syncgit".
Generally, you can compile it and run ocsigenserver on it by
$ make test.byte (or test.opt)
See below for other useful targets for make.
Generated files
---------------
The following files in this directory have been generated by
eliom-distillery:
- syncgit.eliom
This is your initial source file.
All Eliom files (*.eliom, *.eliomi) in this directory are
automatically considered. To add a .ml/.mli file to your project,
append it to the variable SERVER_FILES or CLIENT_FILES.
- static/
The content of this folder is statically served. Put your CSS or
additional JavaScript files here!
- Makefile.options
Configure your project here!
- syncgit.conf.in
This file is a template for the configuration file for
ocsigenserver. You will rarely have to edit itself - it takes its
variables from the Makefile.options. This way, the installation
rules and the configuration files are synchronized with respect to
the different folders.
- Makefile
This contains all rules necessary to build, test, and run your
Eliom application. You better don't touch it ;) See below for the
relevant targets.
- local/
This directory is the target of the temporary installation of
your application, to test locally before doing a system-wide
installation in /. Do not put anything manually here.
- README
Not completely describable here.
Makefile targets
----------------
Here's some help on how to work with this basic distillery project:
- Test your application by compiling it and running ocsigenserver locally
$ make test.byte (or test.opt)
- Compile it only
$ make all (or byte or opt)
- Deploy your project on your system
$ sudo make install (or install.byte or install.opt)
- Run the server on the deployed project
$ sudo make run.byte (or run.opt)
If WWWUSER in the Makefile.options is you, you don't need the
`sudo'. If Eliom isn't installed globally, however, you need to
re-export some environment variables to make this work:
$ sudo PATH=$PATH OCAMLPATH=$OCAMLPATH LD_LIBRARY_PATH=$LD_LIBRARY_PATH make run.byte/run.opt
- If you need a findlib package in your project, add it to the
variables SERVER_PACKAGES and/or CLIENT_PACKAGES. The configuration
file will be automatically updated.
About
No description, website, or topics provided.
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published