Lukasz Pawelczyk [Wed, 28 Oct 2015 12:37:05 +0000 (13:37 +0100)]
logger: set thread id column width to 2
[Feature] Thread ID is often 2 digit number, reflect that
[Cause] N/A
[Solution] N/A
[Verification] Run some tests and verify visually
Change-Id: Iec1ddbb5bc3e28fc0c2ac199cbdf673348405537
Lukasz Pawelczyk [Mon, 26 Oct 2015 15:03:46 +0000 (16:03 +0100)]
lxcpp: user namespace setup
[Feature] Setting up of a user namespace. This also changes the
way namespaces are chosen. This happens automatically now.
[Cause] N/A
[Solution] N/A
[Verification] Run junk tester.
Change-Id: I70c57b56c94ed9650208b63831c77f1ad0c7905c
Dariusz Michaluk [Wed, 28 Oct 2015 12:27:49 +0000 (13:27 +0100)]
Fix build without systemd.
[Feature] Fix build without systemd.
[Cause] N/A
[Solution] N/A
[Verification] Build.
Change-Id: I06f9623e34dfc44f6090201fad4b024f2cb29e7c
Krzysztof Dynowski [Mon, 12 Oct 2015 15:38:27 +0000 (17:38 +0200)]
lxcpp: cgroups API implementation (part 2)
[Feature] Control-groups API for containers
[Cause] N/A
[Solution] N/A
[Verification] build, install, run unit tests
Change-Id: Ica81fcc9b9f31118dfe6167a6b55f814c6ec0453
Dariusz Michaluk [Mon, 26 Oct 2015 13:36:00 +0000 (14:36 +0100)]
FIX: Don't switch to hostVT during testing.
[Feature] FIX: Don't switch to hostVT during testing
[Cause] N/A
[Solution] N/A
[Verification] Build, run tests.
Change-Id: Ic02c2387b15a5a162e88806c2dcc5ec2c82e67b0
Dariusz Michaluk [Fri, 23 Oct 2015 12:10:41 +0000 (14:10 +0200)]
Minor documentation fixes.
[Feature] Minor documentation fixes.
[Cause] N/A
[Solution] N/A
[Verification] Generate documentation.
Change-Id: Id14ffc07725296aa2690b6afce24e95ab3bc45d9
Maciej J. Karpiuk [Mon, 19 Oct 2015 12:03:14 +0000 (14:03 +0200)]
lxcpp: provisioning implementation (part 2)
[Feature] Provisioning implementation for lxcpp: commands.
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: I3089059c5c4491553a4f45876f372ccb6daab3bb
Dariusz Michaluk [Thu, 22 Oct 2015 13:50:14 +0000 (15:50 +0200)]
Add link to demo movie.
[Bug/Feature] Add link to demo movie
[Cause] N/A
[Solution] N/A
[Verification] N/A
Change-Id: I68e14dc5b80819170c4a000694c31b405d689d2b
Lukasz Pawelczyk [Wed, 21 Oct 2015 16:32:34 +0000 (18:32 +0200)]
Use enum class in logger-config as it is possible to serialize now.
[Bug/Feature] N/A
[Cause] To keep things clean and consistent
[Solution] N/A
[Verification] Build, run the junk tester
Change-Id: I75e55448a5f7c559882c6433dc82fae60ab2083b
Krzysztof Dynowski [Mon, 12 Oct 2015 15:38:27 +0000 (17:38 +0200)]
lxcpp: cgroups API implementation (part 1)
[Feature] Control-groups API for containers
[Cause] N/A
[Solution] N/A
[Verification] build, install, run unit tests
Change-Id: I13e921b7568b9d2adf70c9499360d77daf80dee2
Jan Olszak [Mon, 19 Oct 2015 12:49:45 +0000 (14:49 +0200)]
common: Inotify implementation
[Feature] Asynchronous file system events
[Cause] N/A
[Solution] N/A
[Verification] Build, install and run tests
Change-Id: I53b1d75026550cf3563dce7fb1ea50eede4fb5cb
Dariusz Michaluk [Wed, 30 Sep 2015 09:01:49 +0000 (11:01 +0200)]
Various changes relating to create Fedora (LXDE or KDE) Desktop
[Bug/Feature] Various changes relating to create Fedora Desktop
[Cause] N/A
[Solution] N/A
[Verification] Build, run server, run tests.
Change-Id: I847ab904012bea962b9961ad70a4e6bed9a69968
Maciej J. Karpiuk [Thu, 15 Oct 2015 09:42:52 +0000 (11:42 +0200)]
lxcpp: provisioning implementation (part 1)
[Feature] Provisioning implementation for lxcpp (declare, list, remove)
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: I3823587de023a9f1a9e34208ae9e188521dbe3b1
Krzysztof Dynowski [Thu, 3 Sep 2015 07:34:37 +0000 (09:34 +0200)]
lxcpp: network implementation (part 3)
[Feature] Network implementation for lxcpp (routing table manipulation)
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: I983a4b565c4b9e1b07ae8ab568445729c0f80eb8
Lukasz Pawelczyk [Wed, 14 Oct 2015 11:43:41 +0000 (13:43 +0200)]
Don't force compiler colors by default, add an option for that
[Feature] Make it possible to compile without colors.
[Cause] Compilation can be on a terminal (or non-terminal) that
does not understand them.
[Solution] Add a cmake option to force compiler colors, by default
they are "auto"
[Verification] cmake -DVASUM_BUILD_FORCE_COMPILER_COLORS=true/false
Change-Id: I60376daa9801e01901af2f9f8d9d3dd5d6c18494
Jan Olszak [Tue, 13 Oct 2015 15:20:41 +0000 (17:20 +0200)]
lxcpp: Removed Namespace enum
[Feature] Regular Linux CLONE_* flags should be used
instead of the removed enum
[Cause] N/A
[Solution] N/A
[Verification] Build, install and run tests
Change-Id: I29921d1387da76fb50b269f0e92ebb592cf51751
Lukasz Pawelczyk [Thu, 8 Oct 2015 11:28:31 +0000 (13:28 +0200)]
Implement Container::console()
[Feature] An ability to connect to a PTY given to the container
[Cause] To be able to use the container
[Solution] Use PTYs, connect to them and pass read/writes between
stdin/stdout and pty master.
[Verification] There is a simple test program in junk for now
Additional changes with patchset:
- extended signal functions
- fixed signalFD class
Change-Id: Ia6320ee32d537311ef2675eb79f3e837192251b8
Jan Olszak [Mon, 12 Oct 2015 15:45:21 +0000 (17:45 +0200)]
lxcpp: Adding init process to UTS, PID, NET, IPC namespaces
[Feature] Starting init in some namespaces.
MNT and USER need more work.
[Cause] N/A
[Solution] Refactored Guard
[Verification] Build, install and run tests
Change-Id: I3c5ec5c833da34c9ece6acf2c4965e8c57ab966d
Maciej J. Karpiuk [Mon, 12 Oct 2015 10:29:54 +0000 (12:29 +0200)]
vasum: housekeeping, removal of 'using namespace std;'
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] N/A
Change-Id: I583b5ad44cd0d460c6b0c4db0d05217ab05cc2e4
Jan Olszak [Mon, 12 Oct 2015 10:43:10 +0000 (12:43 +0200)]
lxcpp: Stopping container's init process
[Feature] Terminating container's init process
[Cause] N/A
[Solution] N/A
[Verification] Build, install and run tests
Change-Id: I77af77016d06555b6eea3e133e25a44574580c67
Jan Olszak [Thu, 8 Oct 2015 15:26:23 +0000 (17:26 +0200)]
lxcpp: Added simple container tests
[Feature] setInit and setLogger tests
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: I944c76aa4483c6c287a6b032b4d7456ab58f7d44
Jan Olszak [Thu, 8 Oct 2015 12:19:22 +0000 (14:19 +0200)]
lxcpp: Switch on serialization from libConfig
[Feature] Use std::pair and enum serialization
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: I6edb4543bf85eacfb2efe13065970326b30aba17
Jan Olszak [Wed, 7 Oct 2015 16:13:52 +0000 (18:13 +0200)]
config: enum class serialization
[Feature] Serialization of strongly typed enums
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests.
Change-Id: Ie4d112995cff8d58c0cc6fad6c0646ec03d5aa83
Krzysztof Dynowski [Thu, 8 Oct 2015 12:03:43 +0000 (14:03 +0200)]
lxcpp: cgroups API
[Feature] Control-groups API for containers
[Cause] N/A
[Solution] N/A
[Verification] N/A
Change-Id: I69605383b40e3b3e1a8c2f6942e85023b367728e
Lukasz Pawelczyk [Fri, 9 Oct 2015 14:37:59 +0000 (16:37 +0200)]
Fix the color codes effectively fixing the BOLD colors
[Feature] N/A
[Cause] All the colors were always bold
[Solution] Use proper ANSII color codes
[Verification] Visual
Change-Id: Id8be7fbbdad46e9952fcecfa2bdd8328eb4e7164
Pawel Kubik [Fri, 18 Sep 2015 13:03:33 +0000 (15:03 +0200)]
IPC unit tests and testing framework improvements
[Feature] 1. IPC unit tests
2. Cleaner args parsing in vsm_launch_test.py
3. Options to launch a test under custom tools
[Cause] 1. N/A
2. Bugs when launching with external tool
3. Ability to launch any GDB front-end
[Solution] 1. N/A
2. Use list instead of string in Popen
3. Two new command line options
[Verification] Build, install run tests. Try to run single test with
a fixture, for example:
vsm_launch_test.py vasum-server-unit-tests -t \
'IPCSuite/Restart<15ThreadedFixture>'
To test running with --gdb option run test logged as
root or use sudo with -E option in order to preserve
environment.
Change-Id: Icb09c0abed5c671c86a8c85d2aab1aa2b2412d29
Pawel Kubik [Tue, 6 Oct 2015 14:06:40 +0000 (16:06 +0200)]
Remove redundant gcc debug option from CMakeList.txt
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Build
Change-Id: I400ad9d6c91560d18d90a3d09d1ee656b4a31948
Jan Olszak [Wed, 30 Sep 2015 10:40:16 +0000 (12:40 +0200)]
config: std::pair serialization
[Feature] Serialization of pairs
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests.
Change-Id: I5c860e72d91491699deace1c50e213b0538440a4
Jan Olszak [Tue, 6 Oct 2015 12:42:28 +0000 (14:42 +0200)]
Fix buildbreak
[Featurei/Bug] Missing include
[Cause] N/A
[Solution] N/A
[Verification] Clean and build with clang
Change-Id: I76da0251f02449561a60dfb20ccf2504b46789b3
Krzysztof Dynowski [Mon, 5 Oct 2015 09:01:14 +0000 (11:01 +0200)]
fix clang build
[Featurei/Bug] clang fails parsing doxygen comment
[Cause] N/A
[Solution] change param reference
[Verification] Build with clnag
Change-Id: I65d461202d1d6af9bdbfcc89bc104b006e78bf23
Jan Olszak [Tue, 29 Sep 2015 15:41:18 +0000 (17:41 +0200)]
config: std::array serialization.
[Feature] Serialization of std::array
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests.
Change-Id: I3e2f890d07ef6c0818135566eadb11a025438fd7
Jan Olszak [Mon, 28 Sep 2015 16:19:07 +0000 (18:19 +0200)]
config: Cstring serialization.
[Feature] Serialization of null-terminated strings
[Cause] N/A
[Solution] Memory for serialized data is allocated with new,
user should delete[] the field in the destructor
or when it's not used.
[Verification] Build, install, run tests.
Change-Id: Iff49e14ab95410bd7a80ee23abf04e9d92e65a55
Krzysztof Dynowski [Thu, 3 Sep 2015 07:34:37 +0000 (09:34 +0200)]
lxcpp: network implementation (part 2)
[Feature] Network implementation for lxcpp (create/destroy, add/del ip addr)
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: I1286efb4893b9b77bebf20f0e40b9fd06611e48b
Pawel Kubik [Fri, 25 Sep 2015 12:10:29 +0000 (14:10 +0200)]
Fixed dbus testing container configuration.
[Feature] Fix
[Cause] Zone stopped immediately after start.
[Solution] Added sleep-loop to prevent zone from stopping.
[Verification] Build (best under CCOV config), install, run:
sudo vsm_launch_test.py vasum-server-unit-tests \
-t 'ZoneSuite/DbusConnection'
Change-Id: I1ffc9eb047f08173314c16c60ef505f0d81c11c6
Pawel Kubik [Fri, 25 Sep 2015 12:48:50 +0000 (14:48 +0200)]
Improved coverage report instructions.
[Feature] More detailed per-file coverage report instructions.
[Cause] N/A
[Solution] N/A
[Verification] Follow new instructions.
Change-Id: I75c563e8627f2f2e5aa22329e231f18fc4f1841a
Krzysztof Dynowski [Wed, 23 Sep 2015 08:54:20 +0000 (10:54 +0200)]
hotfix2: assert condition
[Feature/Bug] wrong assert condition
[Cause] testcase failure
[Solution] N/A
[Verification] Build and run tests
Change-Id: I2ad2e674205fbc927cb85251c0cbe037bca039fb
Krzysztof Dynowski [Wed, 23 Sep 2015 08:54:20 +0000 (10:54 +0200)]
hotfix: expression always true, use ::ioctl
[Feature/Bug] mistake in assert check
[Cause] compilation error, testcase failure
[Solution] N/A
[Verification] Build and run tests
Change-Id: Ia9696593c5641a8cc5a2a8b2dc3a9c023609d864
Jan Olszak [Thu, 17 Sep 2015 12:55:25 +0000 (14:55 +0200)]
lxcpp: Attach process helper
[Feature] N/A
[Cause] Attach should work in multi-threaded programs
[Solution] Moved part of Attach implementation to a helper binary
[Verification] Build, install, run test
Change-Id: Ibdf5e0049ed41fdbbdb67a5f11de8aa415bdb1a5
Lukasz Pawelczyk [Fri, 18 Sep 2015 14:26:58 +0000 (16:26 +0200)]
lxcpp: Terminal preparation part 2 (guest)
[Feature] Make use of the created pseudoterminals in the container
[Verification] Build, install, run tests
Changes in this commit:
- PrepGuestTerminal command
- it's main function: setupIOControlTTY()
- some more utils/terminal wrappers for syscalls
- long overdue open(2) wrapper
Change-Id: I235baec044ed82d3376cba3f2e5b4d18f5b1dd71
Lukasz Pawelczyk [Thu, 17 Sep 2015 16:18:04 +0000 (18:18 +0200)]
lxcpp: Terminal preparation part 1 (host)
[Feature] Prepare pseudoterminals for the container
[Verification] Build, install, run tests
Changes in this commit:
- PrepHostTerminal command and surrounding function (openPty)
- Terminal(s)Config
- Changes to Start::daemonize() to do its job better
- fd-utils helpers for FD flags
- set CLOEXEC on FDs received through libConfig
Change-Id: I432447900c189bb50669267ff4422c36860b5481
Pawel Kubik [Fri, 18 Sep 2015 12:41:31 +0000 (14:41 +0200)]
Fixed test scripts
[Feature] N/A
[Cause] Unit tests using fixtures can't be run separately,
because their names contains bash special characters.
[Solution] Put test names inside quotes.
[Verification] Install, launch single test case with fixture.
Change-Id: I61e426957e080b1a145bd901c155677775d571ba
Krzysztof Dynowski [Thu, 27 Aug 2015 13:25:58 +0000 (15:25 +0200)]
lxcpp: network implementation (part 1)
[Feature] Network implementation for lxcpp (list, details)
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: I2f43a2bb6d042b5aad9abf87951965e585fb4eb6
Pawel Kubik [Tue, 15 Sep 2015 13:40:41 +0000 (15:40 +0200)]
Instructions for generating code coverage report
[Feature] Instructions in markdown
[Cause] Need for local coverage reports
[Solution] N/A
[Verification] Follow instructions in the file and check report
Change-Id: I69df0752268585c622b5006107ab91a59b840ea7
Lukasz Pawelczyk [Wed, 29 Jul 2015 11:27:25 +0000 (13:27 +0200)]
lxcpp: Initial implementation of the start API call
[Feature] Initial implementation of the start API call.
[Verification] Build, install, run tests
Significant changes related to the start API call:
- Start command that daemonizes and execs guard binary
- Guard process implementation that execs the container's init
Additional changes in this commit supporting the Start API call:
- API extension to Channel class, support close on exec and be able
to survive (as a FD) exec() call
- set close on exec in persistent file logger
- new logger helper to setup the logger
- add pid to the log format
Change-Id: I2d9648e2a861add2aa1bd1d66587bff2a109cc9c
Jan Olszak [Wed, 16 Sep 2015 09:22:22 +0000 (11:22 +0200)]
lxcpp: Setting up the control terminal
[Feature] Setting up the control terminal in Attach
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: I6b1dced4f9a16c04e82b122679f86b90be29d3d1
Pawel Kubik [Mon, 14 Sep 2015 10:20:36 +0000 (12:20 +0200)]
CLI bash completion fix
[Feature] CLI bash completion fix
[Cause] Bash completion broken after commit 4a9c93f
[Solution] Bash completion script template fix
[Verification] Build, install, check CLI completion
Change-Id: Iff043a983d042e4181b33b0f6c4e415befcc22ed
Pawel Kubik [Wed, 9 Sep 2015 15:27:08 +0000 (17:27 +0200)]
Static common library
[Feature] Static common library
[Cause] Need for cleaner dependency management
[Solution] Rules for building static common library, linking it
with other binaries instead of manually adding sources
[Verification] Build, install, run tests and main executables
Change-Id: I6eccf5a706b88ca4576e5bfc31b73ebe87177ff5
Pawel Kubik [Mon, 7 Sep 2015 09:17:45 +0000 (11:17 +0200)]
cppcheck fixes
[Feature] Small code fixes based on cppcheck
[Cause] Minimizing possible runtime errors
[Solution] Fix the code using cppcheck suggestions, suppress
false-positives
[Verification] Compile, run cppcheck
Change-Id: I94fab8e50879f78f3ccb503fd18606e9cbfabfb5
Pawel Kubik [Tue, 1 Sep 2015 14:14:23 +0000 (16:14 +0200)]
Add colorful output for the CLI
[Feature] Colorful CLI output
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run CLI
Change-Id: I2123fbd6c5b94ed20eaa278ce00e371e86ff61f0
Maciej J. Karpiuk [Fri, 4 Sep 2015 10:45:38 +0000 (12:45 +0200)]
libIpc: doxygen docs added
[Feature] libIpc doxygen docs enabled and enhanced
[Cause] documentation task in progress, libIpc was not yet included
[Solution] write missing docs, create group
[Verification] build docs and check libIpc module
Change-Id: Ic8e5261200da9714b478461fe830fabbaa3b5bc9
Maciej J. Karpiuk [Fri, 4 Sep 2015 14:39:29 +0000 (16:39 +0200)]
server: file logging added to logging backends
[Feature] new logging backend support: file
[Cause] N/A
[Solution] one more option to logging-backend
[Verification] try to log to file and user specified filename
Change-Id: Iae51c076c1b52439ff6388cf50b85dc14165a59e
Lukasz Pawelczyk [Wed, 29 Jul 2015 11:27:25 +0000 (13:27 +0200)]
lxcpp: Changes to the ContainerImpl class API for libConfig usage
[Feature] Changes to the ContainerImpl class API for libConfig usage.
PersistentFileBackend for logger.
[Verification] Build, install, run tests.
Change-Id: I3e7290df2bf42df9e067fe6734b96dcf5f3aa20b
Dariusz Michaluk [Fri, 4 Sep 2015 11:58:47 +0000 (13:58 +0200)]
Adjust tests to lxc-1.1.3
[Feature] Adjust tests to lxc-1.1.3
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: I26d3abed39b60f5072399edcb116567d125d82f0
Jan Olszak [Thu, 3 Sep 2015 18:50:19 +0000 (20:50 +0200)]
lxcpp: UID/GID setting in Attach
[Feature] UID/GID setting
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: Iaa83cab137df53a1391f01c0a29ef236da030aee
Jan Olszak [Wed, 2 Sep 2015 15:04:45 +0000 (17:04 +0200)]
lxcpp: Command implementation
[Feature] Base class for commands
Attach command
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: Id9ed43c145704f5d9d21f1aa210694fed1615c57
Lukasz Kostyra [Thu, 3 Sep 2015 12:47:47 +0000 (14:47 +0200)]
ipc: Fix critical build break in unique-id
[Bug] Build break using Clang due to recently added unique-id code
[Cause] Incorrectly used Doxygen syntax causing critical build error
[Solution] Correct the syntax.
[Verification] Build, install, run tests
Change-Id: Ia0194aadfcd5cdcfba90cd518d24fe733edc934b
Maciej J. Karpiuk [Fri, 28 Aug 2015 13:39:41 +0000 (15:39 +0200)]
server: logging-backend selection via command line.
[Feature] command-line option to select logging backend
[Cause] logging backend selected in compile-time, no flexibility
[Solution] add command-line option, select backend in runtime
[Verification] start service with different logging options.
Change-Id: I410457521462b29d4c40995b37bbd8ea06e479b4
Jan Olszak [Thu, 27 Aug 2015 15:06:30 +0000 (17:06 +0200)]
lxcpp: Setting up environment variables
[Feature] Setting up environement in attach
Created the commands directory
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: I7526f04ca48e931be75a99cdbf774b4c5fbb5c35
Lukasz Kostyra [Thu, 13 Aug 2015 13:29:03 +0000 (15:29 +0200)]
Change MessageID and PeerID type to UIDs
[Feature] MessageID and PeerID are generated with UIDs - a timestamp
and UUID pair.
[Cause] Previously used unsigned ints might overflow and create a
security issue.
[Solution] Implement UID class, change MessageID and PeerID to use UID
[Verification] Build, install, run tests
Change-Id: I493cba8e55cc9985d3b2b544b78c434d4deb4191
Pawel Kubik [Mon, 31 Aug 2015 14:29:47 +0000 (16:29 +0200)]
Fixed clang compilation errors
[Feature] Fixed clang compilation errors
[Cause] C++ flags were being passed to the C compiler
[Solution] Pass C++ flags to the C++ compiler only
[Verification] Build using clang
Change-Id: Ie9c7abfaea0ef47381bc045353d1ea3724a19671
Pawel Kubik [Mon, 31 Aug 2015 10:34:44 +0000 (12:34 +0200)]
Move ccolor to common/utils
[Feature] Move ccolor.hpp and ccolor.cpp from libs/logger to common/utils
[Cause] ccolor should be available to the CLI without logger as dependency
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: Ic16301b30bd90e60300e243ee8b2dac309eadfac
Dariusz Michaluk [Thu, 27 Aug 2015 15:32:21 +0000 (17:32 +0200)]
Fix GetNetdevAttrs test
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: I75ba46b0a923622e07d857535496615ac1708ce3
Pawel Kubik [Tue, 25 Aug 2015 08:30:03 +0000 (10:30 +0200)]
Refactored logging code.
[Feature] Improved logging messages
[Cause] Inconsistent logging messages on different loggers
[Solution] Unified logging messages
[Verification] Build, install, run tests
Change-Id: I7424733e97a4081707f64c3c4256021c560c7cfc
Krzysztof Dynowski [Fri, 28 Aug 2015 10:52:51 +0000 (12:52 +0200)]
lxcpp: add all required objects to lxcpp.so, add test executable
[Feature] Linking with lxcpp give unknown symbol errors
[Cause] No requird objects in lxcpp.so
[Solution] Add them to CMakeLists.txt, create test app
[Verification] Build, install
Change-Id: I4dc59091ea294aa51a6201236f6fe51162459b83
Pawel Kubik [Fri, 21 Aug 2015 15:19:46 +0000 (17:19 +0200)]
Improved CLI connection error note.
[Feature] CLI connection error note, and suggestion to launch
vasum-server
[Cause] Previous information was inacurate
[Solution] Added proper error handling
[Verification] Build, install, run cli/vsm when the server is not
running
Change-Id: I59a4467a25ef40e6ed650485c8ac690f955e29cc
Jan Olszak [Wed, 26 Aug 2015 16:42:18 +0000 (18:42 +0200)]
lxcpp: AttachManager and chdir
[Feature] Added AttachManager for handling attaching
It's possible to set cwd inside container.
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: Ida77e56a7d4f42225554c8fe02b5794509b83ef2
Krzysztof Dynowski [Fri, 21 Aug 2015 15:08:22 +0000 (17:08 +0200)]
lxcpp: network interface
[Feature] Network interface for lxcpp
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: Ifcf03b46662168c198a8e36c268b6856639ff52e
Pawel Kubik [Wed, 19 Aug 2015 15:28:08 +0000 (17:28 +0200)]
Add Doxygen libConfig documentation.
[Feature] libConfig documentation
[Cause] Explain the library usage
[Verification] Built HTML using generate_documentation.sh and rendered
it in browser
Change-Id: I459756566055023f357fb2037b3409410129f53e
Jan Olszak [Mon, 24 Aug 2015 15:07:57 +0000 (17:07 +0200)]
lxcpp: Dropping capabilities from the bounding set
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: Id9e351d1993b43850e6a4d2a59b9eac2b4c5d354
Lukasz Pawelczyk [Fri, 21 Aug 2015 13:27:15 +0000 (15:27 +0200)]
Add ascii-art logo to the readme
[Feature] AA logo
[Cause] We love it
[Verification] Look and admire
Change-Id: I1bb6181e708a9a8643d77bd860619880e4ca81a2
Jan Olszak [Mon, 24 Aug 2015 09:13:05 +0000 (11:13 +0200)]
lxcpp: Remounting /proc and /sys on attach
[Feature] Remounting /proc /sys
Filesystem handling functions
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: I8015b7a66c1fabab9133ad360e9e7a45c069082c
Jan Olszak [Tue, 18 Aug 2015 10:02:12 +0000 (12:02 +0200)]
lxcpp: Simple attach implementation
[Feature] Running code in the container's context
Socketpair wrapper - Channel
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: Ib5b1011c5f8578ab9e258bcbea3cd7aa3bc233a3
Krzysztof Dynowski [Thu, 20 Aug 2015 14:10:52 +0000 (16:10 +0200)]
vsm: update network related help, formating changes
[Feature] clarify help for net-create command
[Cause] poor help on how to create virtual network
[Solution] extend description format, inerpretation
[Verification] Build, install, run vsm net-create help
Change-Id: I09b877d090607fb9f8d3c5b367f6f6b2d1a7ed85
Krzysztof Dynowski [Wed, 19 Aug 2015 10:51:22 +0000 (12:51 +0200)]
vsm: make vsm> prompt, finish prompt line on exit in interactive mode
[Feature] 'vsm>' prompt, new line when exit
[Cause] prompt gives clear info what is the interpreter
[Solution] N/A
[Verification] Build, install, use vsm command
Change-Id: Ic5b6751dbebc38d204565311380d6459448d25a0
Krzysztof Dynowski [Fri, 7 Aug 2015 09:05:14 +0000 (11:05 +0200)]
vsm: persistant history of entered commands in interactive mode
[Feature] Keep history of entered commands (in ~/.vsm_history file)
[Cause] No history after starting vsm
[Solution] use read_history/write_history from readline library
[Verification] Build, install, use vsm command
Change-Id: I107ba49ac01d52825312416a11fbb094735401af
Krzysztof Dynowski [Thu, 30 Jul 2015 12:04:25 +0000 (14:04 +0200)]
Support getting list of ip/mask for one interface, change netdev_set_ip* to netdev_add_ip*
[Feature] Get list of configured ip/mask for zone interface
[Cause] Many ip/mask entries can be assigned to one interface
[Solution] Implement generic method getting list of network addresses
[Verification] Build, install, use vsm net-add-ip to add ips
vsm net-list to get configured ips
Change-Id: I8d4c1b59e03800aa513811992cc13e71df8d599e
Krzysztof Dynowski [Fri, 31 Jul 2015 13:01:38 +0000 (15:01 +0200)]
Cleanup cppcheck statistics
[Feature] N/A
[Cause] Cppcheck results reported on jenkins contains error/warning messages
[Solution] Make code correction to satisfy cppcheck,
add cppcheck configuration to suppress some messages (e.g. API funcs)
[Verification] Have installed cppcheck >= v1.66
Perform ./tests/cppcheck/cppcheck.sh script before commiting to review
Change-Id: Ice10bbc118ab921feb9cb7261d4a2bdc22282353
Lukasz Pawelczyk [Tue, 4 Aug 2015 10:17:23 +0000 (12:17 +0200)]
lxcpp: fix linking of 3rd party binaries with lxcpp
[Feature] N/A
[Cause] To be finally able to link with lxcpp of 3rd party code
[Solution] N/A
[Verification] Link non-vasum program against liblxcpp
Change-Id: I218756ace9d9217db87d3e19b820d35653a22153
Mateusz Malicki [Mon, 27 Jul 2015 15:28:22 +0000 (17:28 +0200)]
InputMonitor connected to epoll dispatcher
[Feature] InputMonitor connected to epoll dispatcher
[Cause] N/A
[Solution] N/A
[Verification] Build, run tests
Change-Id: If2bdcd8c8493bc22357aa93b43b5c6e530c954d4
Dariusz Michaluk [Tue, 28 Jul 2015 13:55:25 +0000 (15:55 +0200)]
Add daemonize function to work in the background.
[Feature] Add daemonize function to work in the background.
[Cause] N/A
[Solution] N/A
[Verification] Build, run tests, run server as daemon.
Change-Id: Ie8987ac4d23ac350ab6036c476ade47436afbe69
Jan Olszak [Fri, 31 Jul 2015 15:11:16 +0000 (17:11 +0200)]
lxcpp: Added utils sources
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Link only against liblxcpp
Change-Id: I7e9d32fc502a068dd9c50e5e45ab3ed07756f815
Dariusz Michaluk [Mon, 3 Aug 2015 13:52:58 +0000 (15:52 +0200)]
Fix lxcpp tests
[Bug] N/A
[Cause] N/A
[Solution] N/A
[Verification] N/A
Change-Id: Idf5939f96ffb6af7380cfc5fe216361b53402801
Jan Olszak [Wed, 29 Jul 2015 13:06:02 +0000 (15:06 +0200)]
lxcpp: setns wrapper
[Feature] Added setns wrapper
Added Namespace type
[Cause] N/A
[Solution] N/A
[Verification] N/A
Change-Id: Ib07374bb07183dba604053139d624bdf2a850268
Lukasz Kostyra [Tue, 28 Jul 2015 07:42:48 +0000 (09:42 +0200)]
Add test for Lock/UnlockQueue API
[Feature] Test for Lock/UnlockQueue API
[Cause] N/A
[Solution] N/A
[Verification] Build, install, run tests
Change-Id: Id8a88af8459a63e61db06668d4b4a57b2578b4e2
Krzysztof Dynowski [Thu, 23 Jul 2015 14:27:57 +0000 (16:27 +0200)]
Make vasum-cli arguments shorter/nicer with autocomplete, rename tool vasum-cli to vsm
[Feature] Shorter and nicer arguments for command line tool
[Cause] Messy underscore, too many commands
[Solution] More generic commands, shorter, easier to enter names
[Verification] Build, install, use vsm with various arguments
Try autocompletion for arguments
Change-Id: I2e8d1bff3a5dcf96df1250b29b8df55c8f23171d
Lukasz Pawelczyk [Wed, 29 Jul 2015 10:03:08 +0000 (12:03 +0200)]
Fix pkg-config files from returning wrong relative paths.
[Bug] The pkg-config files were using wrong relative paths
[Cause] CMAKE_INSTALL_* variables are relative, cmake could handle
them internally for INSTALL and similar, but for
pkgconfig understands them literally.
[Solution] Use absolute paths everywhere.
[Verification] Check the content of *.pc files after make install.
Change-Id: I2a14d0f9ddc45238be7e8d487d186df1877730bd
Jan Olszak [Tue, 28 Jul 2015 11:12:10 +0000 (13:12 +0200)]
lxcpp: Added logger, tests and changed exceptions
[Feature] Using libLogger in lxcpp in an example clone function.
Set up unit-tests
Changed exception names
[Cause] N/A
[Solution] N/A
[Verification] N/A
Change-Id: I039bf3e17d791ccf1a18f17a9b2a180ee2081722
Dariusz Michaluk [Mon, 27 Jul 2015 14:45:35 +0000 (16:45 +0200)]
Remove debug logs in release build.
[Bug] Remove debug logs in release build.
[Cause] N/A
[Solution] N/A
[Verification] Build release/debug, run server.
Change-Id: Id34991a45e0fbee8edddfea10b64f69809141af3
Lukasz Pawelczyk [Mon, 27 Jul 2015 09:20:37 +0000 (11:20 +0200)]
Hide VsmZone and VsmNetdevType structs from API
[Feature] N/A
[Cause] Make it easier to change them in the future without
breaking the ABI. Also remove duplicate related API
function from the code.
[Solution] N/A
[Verification] N/A
Change-Id: Ib0ec7374ee0f94cd88e2998e9d10f18ae094ee98
Jan Olszak [Mon, 27 Jul 2015 13:23:38 +0000 (15:23 +0200)]
Added lxcpp's license
[Feature] lxcpp is on LGPL 2.1 license
[Cause] N/A
[Solution] N/A
[Verification] N/A
Change-Id: Ia1916f4ba8ea815467ea958020db401f46cfa5cb
Dariusz Michaluk [Fri, 17 Jul 2015 13:27:57 +0000 (15:27 +0200)]
Various changes relating to build on Ubuntu and Fedora Linux.
[Bug/Feature] Various changes relating to build on Ubuntu and Fedora Linux.
[Cause] N/A
[Solution] N/A
Verification] Build, run server, run tests.
Change-Id: Ie9f8c05a0de96b0dc07d506657a48f6dd1b074b4
Mateusz Malicki [Thu, 23 Jul 2015 13:48:09 +0000 (15:48 +0200)]
lxcpp skeleton
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] N/A
Change-Id: I1950967edc720ad9b81301daa4e1b60ff8c3b41d
Dariusz Michaluk [Mon, 27 Jul 2015 07:41:42 +0000 (09:41 +0200)]
Fix build break
[Bug] C++ style comments are not allowed in ISO C90
[Cause] N/A
[Solution] N/A
[Verification] Build
Change-Id: Iab690af9fc085c0707aacb83b901c3efde5ae638
Jan Olszak [Fri, 24 Jul 2015 12:28:35 +0000 (14:28 +0200)]
Fix build break in clang
[Feature] N/A
[Cause] No new line in vasum-client.h
[Solution] N/A
[Verification] N/A
Change-Id: Ic4cf72d42a173edeb0a6d450c1f2aad12bb22a59
Jan Olszak [Fri, 24 Jul 2015 09:25:51 +0000 (11:25 +0200)]
Added libvasum-client's documentation
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] ./generate_documentation.sh and verify
Change-Id: I9ec902cce2b29ca2d81fa8ca40db11977e0f3c3f
Mateusz Malicki [Fri, 17 Jul 2015 14:49:43 +0000 (16:49 +0200)]
Clean up zones root path
[Feature] Clean up zones root path (according to cleanUpZonesPath flag)
[Cause] N/A
[Solution] Added cleanUpZonesPath to daemon.conf which tells whether
to remove unknown files from the zonesPath;
Added (vsm_)clean_up_zones_root to cli and client
[Verification] Build, install, create files in zonesPath,
run vasum-server with different flag value, check if
zonesPath is as it should; execute command
Change-Id: I64a1656ef05ccd5fd7e83a48cd50234e2e6bd4b4
Jan Olszak [Thu, 23 Jul 2015 12:28:21 +0000 (14:28 +0200)]
Added libLogger's documentation
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] ./generate_documentation.sh and verify
Change-Id: I53a75f358e0e9182f51334544cb5da9722182cf9
Lukasz Kostyra [Thu, 23 Jul 2015 06:06:23 +0000 (08:06 +0200)]
Modify generate_documentation.sh
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] Run script, output html dir should be in doc directory.
Run without doxygen installed, should exit with an error message.
Change-Id: Ibfc0026da771ba1415f034ce8e81eaeb1deab0c2
Lukasz Kostyra [Wed, 22 Jul 2015 13:34:12 +0000 (15:34 +0200)]
Enable file path stripping in Doxygen
[Feature] N/A
[Cause] N/A
[Solution] N/A
[Verification] ./generate_documentation.sh, access file's doc and check page title
Change-Id: I9f05262a5ec73327492aad722b15393335fc46c1
Lukasz Kostyra [Mon, 20 Jul 2015 11:18:41 +0000 (13:18 +0200)]
Fix Doxygen warnings
[Bug] Doxygen warnings during documentation generation.
[Cause] Some docblocks were incomplete.
[Solution] Fix warnings.
[Verification] Build, run tests, ./generate_documentation.sh. During doc
generation there will be warnings related to
command-line-interface.hpp stating "no matching file memeber".
This is a Doxygen bug and the only possible fix is to
replace Args typedef with std::vector<std::string>.
Change-Id: I1523dc83a5f5e9902e5983ac5b95497d61f71cfc