aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@users.noreply.github.com>2020-09-02 00:04:25 -0400
committerGitHub <noreply@github.com>2020-09-02 00:04:25 -0400
commitec7119052342e4371b52d3d52d4fe6698b84f5a7 (patch)
tree217e3c7274e832dfd9ad61c393e769bd7f7efbcf
parente82fc02e5a654877a821be3a21e61e099de501ed (diff)
downloadmultihome-ec7119052342e4371b52d3d52d4fe6698b84f5a7.tar.gz
Add .circleci/config.yml (#1)
-rw-r--r--.circleci/config.yml47
-rw-r--r--README.md2
2 files changed, 49 insertions, 0 deletions
diff --git a/.circleci/config.yml b/.circleci/config.yml
new file mode 100644
index 0000000..482b103
--- /dev/null
+++ b/.circleci/config.yml
@@ -0,0 +1,47 @@
+version: 2.1
+
+jobs:
+ build:
+ machine:
+ image: ubuntu-1604:202007-01
+ steps:
+ - checkout
+ - run: cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_C_FLAGS="-DENABLE_TESTING -g" .
+ - run: make
+ - run: ./multihome -t
+ - run: sudo make install
+ - run: multihome -s
+ - run:
+ name: "Runtime test"
+ command: |
+ . ~/.multihome/init
+ . /etc/profile
+ . ~/.profile
+
+ echo "multihome location: $MULTIHOME"
+ echo "Current HOME: $HOME"
+ echo "Previous HOME: $HOME_OLD"
+ echo "Current PATH: $PATH"
+
+ echo "System account structure (/etc/skel):"
+ ls -la /etc/skel
+
+ echo "Current HOME structure:"
+ ls -la ~
+
+ echo "test file" > topdir/.multihome/skel/TESTFILE
+
+ echo "T bin/" > topdir/.multihome/transfer
+ echo "H .gitconfig" >> topdir/.multihome/transfer
+ echo "L .gemrc" >> topdir/.multihome/transfer
+
+ multihome -u
+
+ echo "Updated HOME structure:"
+ ls -la ~
+
+ test -f ~/TESTFILE
+ test -d ~/bin
+ test -f ~/.gitconfig
+ test -L ~/.gemrc
+
diff --git a/README.md b/README.md
index 907fe72..3578ae6 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,7 @@
# multihome
+[![CircleCI](https://circleci.com/gh/jhunkeler/multihome.svg?style=svg)](https://circleci.com/gh/jhunkeler/multihome)
+
NFS mounted home directories are common when operating in a clustered environment and so are the problems that come along with it. Multihome manages your `HOME` environment variable on a per-host basis. When you log into a system, Multihome creates a new home directory using the system's default account skeleton, changes your `HOME` to point to it, then initializes your shell session from there. This allows you, as the user, to maintain unique home directories on any system within the cluster; complete with their own individualized settings.
## Usage