~snappy-dev/snapcraft/core

76.1.1 by Michael Terry
Add basic README
1
# Snapcraft
2
3
## Running
4
5
To see all the commands and options, run `snapcraft --help`.
6
7
## Testing
8
9
Simply run the top level testing script:
10
11
    ./runtests.sh
12
90.2.2 by Leo Arias
Clarify REAMDE.
13
- If you want to get a test coverage report, install python3-coverage before running the tests:
90.2.1 by Leo Arias
Add test coverage report.
14
15
    sudo apt-get install python3-coverage
16
90.2.2 by Leo Arias
Clarify REAMDE.
17
76.1.1 by Michael Terry
Add basic README
18
- If you don't want to run the plainbox integration tests, you can skip them by setting SNAPCRAFT_TESTS_SKIP_PLAINBOX=1 in your environment.
19
20
- If you are on 15.04 or earlier, you will need to run:
21
22
    sudo add-apt-repository ppa:hardware-certification/public
23
24
### PPA
25
26
You can install the daily build PPA by running:
27
28
    sudo add-apt-repository ppa:snappy-dev/snapcraft-daily
29
30
## Hacking
31
32
We'd love the help!
33
34
- Submit merge requests against lp:snapcraft
35
- Our mailing list is snappy-devel@lists.ubuntu.com
36
- We can also be found on the #snappy IRC channel on Freenode
37
38
### Project Layout
39
40
- **bin:** Holds the main snapcraft script. Putting this bin in your PATH or directly running scripts from it will find the rest of the source tree automatically.
41
42
- **examples:** Entering the subdirectories and running `../../bin/snapcraft snap` will generally yield interesting results. These examples will give you an idea of what snapcraft can do. These examples are not used during automated testing, they are simply for experimenting.
43
44
- **plugins:** Holds yaml metadata for the current snapcraft plugins.
45
46
- **tests:** Tests, obviously. `unit` holds Python unit tests and `plainbox` holds plainbox integration tests.
47
48
- **snapcraft:** The Python module that houses the core snapcraft logic. The `plugins` subdirectory holds the code for each plugin.