You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Docker images for building Apache CloudStack DEB packages.
3
4
4
5
This will give portable, immutable and reproducable mechanism to build packages for releases. A very good candidate to be used by the Jenkins slaves of the project.
5
6
6
-
# Table of Contents
7
+
##Table of Contents
7
8
8
-
-[Supported tags and respective Dockerfile links](https://github.com/khos2ow/cloudstack-deb-builder#supported-tags-and-respective-dockerfile-links)
9
-
-[Packges installed in Conatiner](https://github.com/khos2ow/cloudstack-deb-builder#packges-installed-in-conatiner)
You can replace `ubuntu1604` tag by `ubuntu1404` or `latest` if you want.
55
64
56
-
## Build Packages
65
+
### Build packages
66
+
57
67
Now that we have the Docker images we can build packages by mapping `/tmp` into `/mnt/build` in the container. (Note that the container always expects the `cloudstack` code exists in `/mnt/build` path.)
58
68
59
69
docker run \
@@ -68,18 +78,39 @@ Or if your local cloudstack folder has other name, you need to map it to `/mnt/b
68
78
69
79
After the build has finished the *.deb* packages are available in */tmp/cloudstack/dist/debbuild/DEBS* on the host system.
70
80
71
-
## Maven Cache
81
+
## Building tips
82
+
83
+
Check the following tips when using the builder:
84
+
85
+
### Maven cache
86
+
72
87
You can provide Maven cache folder (`~/.m2`) as a volume to the container to make it run faster.
Builder container in some cases (e.g. using `--use-timestamp` flag) may change the file and directory owner shared from host to container (through volume) and it will create `dist` directory which holds the final artifacts. You can provide `USER_ID` (mandatory) and/or `USER_GID` (optional) from host to adjust the owner from whitin the container.
97
+
98
+
This is specially useful if you want to use this image in Jenkins job and want to clean up the workspace afterward. By adjusting the owner, you won't need to give your Jenkins' user `sudo` privilege to clean up.
To see all the available options you can pass to `docker run ...` command:
81
109
82
110
docker run \
83
111
-v /tmp:/mnt/build \
84
112
khos2ow/cloudstack-deb-builder:ubuntu1604 --help
85
113
114
+
## License
115
+
116
+
Licensed under [Apache License version 2.0](http://www.apache.org/licenses/LICENSE-2.0). Please see the [LICENSE](https://github.com/khos2ow/cloudstack-deb-builder/blob/master/LICENSE) file included in the root directory of the source tree for extended license details.
0 commit comments