List of commits:
Subject Hash Author Date (UTC)
Update README.md 10b989f84b331a6cba39040cc5c35952e135adc9 Jan Allersma 2019-01-26 19:06:49
Add example for demonstration. 19c532f4bb40e5485159b3e13ed78514cf85b5ee Jan Allersma 2019-01-20 15:20:51
Fix module concurrency. f39efe6c3981d1097e6ee8ced0f3d7a8c913a256 Jan Allersma 2019-01-20 14:46:26
Revise git(ignore) integration. 192f93a160ead0165ca15c21f5cc046d89b7ba5d Jan Allersma 2019-01-19 16:39:10
Run modules concurrently. 0100f680f4054ffe4948278a5dae93b4fcb0d333 Jan Allersma 2019-01-19 16:24:27
Fix `dep_config::scan`. ed8759345a07e93b30bd802b1e6ecb8d5eeb3b85 Jan Allersma 2019-01-18 14:53:50
Fix fetching with single-file-modules. d1a2173433bf45648da9a85cda04d7ace9148439 Jan Allersma 2019-01-15 16:24:27
Add feature: initialize hidden dependencies. fc99666c48da1653b3097a0251d8219bc49886cb Jan Allersma 2019-01-12 15:52:45
Revise `hide` command. 482bad08f949eaedbd61e2cb7c53870271d47997 Jan Allersma 2019-01-11 15:45:26
Rename project to 'Ambassade'. 4f9c0e27ca25042a97acebc9f3282e4f941706fe Jan Allersma 2019-01-10 15:01:39
Git integration. 0ebc5b3769e50c3463bdc39af0160c7db0d3f00b Jan Allersma 2019-01-03 17:34:18
Implement `hide` command. ab693b8fd91c93dfd7ee7b82cbae75b2a6043b0f Jan Allersma 2018-12-29 15:13:25
Resolve missing/erroneous build/run commands. e81d57882036a6475718b0653169c609d23b1c30 Jan Allersma 2018-12-25 13:06:00
Show working directory in status. ab188603dda062de4b2ea76c5bc1d2d41d98b8c2 Jan Allersma 2018-12-25 10:36:35
Add shell fallthrough. 02078135791fb3889152c11defaa2df21d0ae597 Jan Allersma 2018-12-22 19:47:36
Show dependencies when using `delete` command. cfa9779714d5e6d46ab5b4eeb84a915a15f23f54 Jan Allersma 2018-12-20 15:46:05
Resolve dep-tree by building project recursively. f53e38d790ec67d99ec8204af97273a53b73a9dc Jan Allersma 2018-12-19 14:54:07
Improve `dep-tree` command. 90bfa0340b7b874d65c08dc05c3d711abda1c469 Jan Allersma 2018-12-17 20:10:14
Implement experimental `dep-tree` command. 45d9dfdbfc99c59174e7c587621276b78ab7a4e9 Jan Allersma 2018-12-14 16:11:53
Implement `add` command. bbb2544bd06f29866465d651c32ca4d6e017f5e9 Jan Allersma 2018-12-11 15:43:10
Commit 10b989f84b331a6cba39040cc5c35952e135adc9 - Update README.md
* Add License.
* Remove example.
* Use `help` as argument to show the help message.
Author: Jan Allersma
Author date (UTC): 2019-01-26 19:06
Committer name: Jan Allersma
Committer date (UTC): 2019-01-26 19:11
Parent(s): 19c532f4bb40e5485159b3e13ed78514cf85b5ee
Signing key:
Tree: 7a2ab3a2bcd1f71cea874d7b7f0e5c6dc855827a
File Lines added Lines deleted
Cargo.toml 1 1
README.md 39 2
doc/LICENSE 7 0
example/commands.sh 0 45
example/dep_config/elasticsearch-6.5.4.json 0 12
example/dep_config/requests.json 0 12
src/backend/project.rs 1 3
src/parser.rs 1 1
File Cargo.toml changed (mode: 100644) (index ef6b9ac..53ed450)
1 1 [package] [package]
2 2 name = "ambassade" name = "ambassade"
3 version = "0.1.0"
3 version = "1.0.0"
4 4 authors = ["Jan Allersma <jan@allersma.be>"] authors = ["Jan Allersma <jan@allersma.be>"]
5 5
6 6 [dependencies] [dependencies]
File README.md changed (mode: 100644) (index e1dd235..48ad3ec)
1 1 # Ambassade # Ambassade
2 2
3 ## Notes
3 ## What is Ambassade?
4 4
5 `backend::fetch::update_module()` kan wellicht met `backend::add::update_module()` samengevoegd worden.
5 In short, Ambassade is an agnostic package manager. This means that Ambassade
6 excels at managing projects that are cross OS and/or cross language.
7
8 ## Why Ambassade?
9
10 A lot of non-trivial projects require (technical) documentation. These
11 projects are usually too complex to understand at first glance and require
12 more than just one command to build. Most organizations have rules about how
13 documentation should be provided and in what format, as it makes clear how the
14 project's software works and how to use it. Ambassade tries to simplify this.
15 Just one `build` and one `run` command should suffice to build and run software.
16 Developers shouldn't have to know how every part of the software that they do
17 not directly use, works.
18
19 So Ambassade tries to solve an organizational problem: instead of having to
20 describe in the documentation how you as developer need to set up an ecosystem
21 that is required to successfully build and run your software, you just use
22 Ambassade to do it for you. This saves time, effort and frustration.
23
24 ## How to use Ambassade?
25
26 The `ambassade help` command is enough to teach you the basics. For more
27 advanced usage of Ambassade, you will have to edit the config files.
28
29 ## Getting Ambassade
30
31 ### Building from source
32
33 Use Cargo to build Ambassade from source:
34
35 ```bash
36 cargo build # For debug version
37 cargo build --release # For release version
38 ```
39
40 ## Licence
41
42 See the [`LICENSE`](https://pagure.io/Ambassade/raw/master/f/doc/LICENSE) document for Ambassade's license.
File doc/LICENSE added (mode: 100644) (index 0000000..3348eb6)
1 Copyright 2019 J.D. Allersma
2
3 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
4
5 The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
6
7 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
File example/commands.sh deleted (index 92ef75f..0000000)
1 # Voorbereiding
2 cargo build # in ambassade dir.
3 sudo cp -v ./target/debug/ambassade /usr/local/bin/ambassade
4 sudo npm i --global http-server
5
6 # Initializatie:
7 git init example
8 ambassade init
9
10 # Een 'module' ergens vandaan halen zonder een config file in de module zelf aan te maken:
11 ambassade hide elasticsearch-6.5.4 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.5.4.tar.gz
12
13 # Modules toevoegen die al een config file hebben:
14 ambassade add Ambassade-example-login-stats git clone https://pagure.io/Ambassade-example-login-stats
15
16 # NPM packages werken nog niet zo lekker:
17 ambassade add Ambassade-example-login-user git clone https://pagure.io/Ambassade-example-login-user
18 pushd ./dep/Ambassade-example-login-user
19 npm i
20 popd
21
22 # Hide past het 'add' behavior aan:
23 ambassade hide requests git clone git://github.com/requests/requests.git --depth=1
24
25 # Bouw het project:
26 ambassade build
27 # Build command voor requests: pip install ./dep/requests --user
28 # Build command voor elasticsearch: tar -xvzf ./dep/elasticsearch-6.5.4.tar.gz -C ./dep
29 # Build command voor example: echo no build command
30
31 # Set run command for elasticsearch:
32 ambassade run elasticsearch-6.5.4
33
34 # Verander commando voor Windows:
35 nano ./dep_config/elasticsearch-6.5.4
36
37 # Run het project:
38 ambassade run elasticsearch-6.5.4 Ambassade-example-login-user
39
40
41 # Open browser zonder CORS:
42 about:config -> security.fileuri.strict_origin_policy -> false. # en daarna weer reverten ofc.
43
44 # Run het beheersysteem:
45 ambassade run Ambassade-example-login-stats
File example/dep_config/elasticsearch-6.5.4.json deleted (index dc4e71d..0000000)
1 {
2 "build": {
3 "linux": "tar -xvzf ./dep/elasticsearch-6.5.4.tar.gz -C ./dep",
4 "os-x": "tar -xvzf ./dep/elasticsearch-6.5.4.tar.gz -C ./dep",
5 "windows": "tar -xvzf ./dep/elasticsearch-6.5.4.tar.gz -C ./dep"
6 },
7 "run": {
8 "linux": "./bin/elasticsearch",
9 "os-x": "./bin/elasticsearch",
10 "windows": "./bin/elasticsearch"
11 }
12 }
File example/dep_config/requests.json deleted (index 6feb895..0000000)
1 {
2 "build": {
3 "linux": "pip install ./dep/requests --user",
4 "os-x": "pip install ./dep/requests --user",
5 "windows": "pip install ./dep/requests --user"
6 },
7 "run": {
8 "linux": "",
9 "os-x": "",
10 "windows": ""
11 }
12 }
File src/backend/project.rs changed (mode: 100644) (index ae6853d..5faa308)
... ... pub fn help() {
174 174 println!("$ ambassade [FLAG] [COMMAND [ARGUMENTS]]"); println!("$ ambassade [FLAG] [COMMAND [ARGUMENTS]]");
175 175 println!(""); println!("");
176 176
177 println!("--help -h\t\t\t\tShow this message");
178 println!("");
179
177 println!("help\t\t\t\tShow this message");
180 178 println!("init [DIRECTORY]\t\t Initialize new project in specified directory. Defaults to current directory."); println!("init [DIRECTORY]\t\t Initialize new project in specified directory. Defaults to current directory.");
181 179 println!("build [--module]\t\t Build current project if module flag is not specified, otherwise only the module will be built."); println!("build [--module]\t\t Build current project if module flag is not specified, otherwise only the module will be built.");
182 180 println!("run [MODULES]\t\t\t Build current project and run MODULES. MODULES default to the project module."); println!("run [MODULES]\t\t\t Build current project and run MODULES. MODULES default to the project module.");
File src/parser.rs changed (mode: 100644) (index e73755b..538bf18)
... ... pub fn parse_command<'a, I>(args: &mut I) -> bool where I: Iterator<Item=&'a str
18 18 fn parse<I>(args: &mut I, open_shell: bool) -> bool where I: Iterator<Item=String> { fn parse<I>(args: &mut I, open_shell: bool) -> bool where I: Iterator<Item=String> {
19 19 match args.next() { match args.next() {
20 20 Some(argument) => { Some(argument) => {
21 if argument == "--help" || argument == "-h" {
21 if argument == "--help" || argument == "-h" || argument == "help" {
22 22 backend::project::help(); backend::project::help();
23 23 } }
24 24 else if argument == "init" { else if argument == "init" {
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/kapstok/NHL-Beheer

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/kapstok/NHL-Beheer

Clone this repository using git:
git clone git://git.rocketgit.com/user/kapstok/NHL-Beheer

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main