tree fe6053a86b5c93cc5c326eee980e176927780cda
parent fe8d3bc523ac928f5cf7d9a9951d584b333e21f5
author Sylvain Desbureaux <sylvain.desbureaux@orange.com> 1548238470 +0100
committer Sylvain Desbureaux <sylvain.desbureaux@orange.com> 1548855277 +0100

reduce sdnc-ansible-server image footprint

Project "CIA" scope is to provide smaller and multi architecture docker
images.

This proposition aims to do that for sdnc-ansible-server.

The current size of this proposal is 139mb compared to the 618Mb image
proposed before (and before actual ansible installation).

Principles used are the following:

1. a "basic" `docker build .` should provide a working image;
2. use the smallest (and multi arch) base image possibe;
3. install necessary stuff only;
4. leverage python best practices for installation;
5. remove installation stuff occuring at run level and move them to
   build level.

* Dockerfile is now at the root part;
* ansible configuration file `ansible.cfg` is created and put in
  `configuration` folder;
* ansible configuration file `ansible.cfg` is pushed during the
  build part with a reproductible process;
* `python` files are on `ansible-server" folder so copying during build
  works out of the box;
* yml files are put directly on `ansible-server/Playbooks` so copying
during build works out the box;

* Dockerfile base image is now alpine:3.8;
* `timeout` executable being now from busybox, change in the
  command-line call has been made (`--signal` is now `-s` and `-t` is
  set before setting the timeout value).

* Only install python and python-pip as alpine package and remove build
  dependencies package after use.

* put all python requirements in `requirements.txt` package and launch
  pip installation command with this file.

* call directly python main script (`RestServer.py`) as entrypoint and
  do the python installation stuff at build time.

- [x] change pom.xml so building parts works
- [ ] consider changing destination folder (`/opt/ansible-server/`) to
      the ancient one (`/opt/onap/ccsdk/`) if this is problematic

Change-Id: I6295d7c2d1ed631e1842350581234686d704c1bf
Issue-ID: INT-816
Signed-off-by: Sylvain Desbureaux <sylvain.desbureaux@orange.com>

Former-commit-id: 4fe3b43a0d30a15ceed58c695d2a72c5382fded6