Git Product home page Git Product logo

oms-development-vm's Introduction

OMS Development VM

Build Status

What is this repository for?

Simple LDAP server with Vagrant and Puppet as proof-of-concept of these technologies.

How do I get set up?

  • Install VirtualBox and Vagrant.
  • Clone this repository recursively with git clone --recursive <URL>.
  • If you use Windows, fix your line endings now (see below).
  • Start the virtual machine with vagrant up from within the repository folder.
  • Visit phpLDAPadmin at http://localhost:8888/phpldapadmin in a browser.
  • If you want to use ApacheDirectoryStudio, use server at localhost:4444.

Remarks for Windows hosts

If you use Windows as host (i.e., as development platform), you have to be cautious about a few things:

  • Be careful about too long filenames. Either clone at a high point of your folder structure (for example at C:\aegee), or use git config --system core.longpaths true(with Git 1.9.0 and above). See here for details.
  • You MUST use LF line endings in git. This is true for all submodules as well! See this article for details. These commands should do the trick:
    git config core.autocrlf false
    git config core.eol lf
    git submodule foreach --recursive "git config core.autocrlf false"
    git submodule foreach --recursive "git config core.eol lf"
    rm -rf *     # Careful: you know what this does!
    git checkout -- .
    git submodule update --recursive
  • You also have to fix symlinks after cloning! See this article for more info.

Setup of ports

I tried to make the Vagrantfile as readable as possible but it's worth repeating it here in case you are not familiar with Vagrant.

Host (your computer) Service Used by Guest (the VM)
8888 HTTP apache2 80
4444 LDAP slapd 389
2222 SSH sshd 22
--- --- --- ---
8800 API oms-core 8080
8801 consumer oms-profiles-module 8081

Sharing the content of the VM directly so we can work from the host

|Your local folder|synced seamless in your VM at| |---|---|---|---| |ignore/oms-core|/srv/oms-core| |ignore/oms-profiles-module|/srv/oms-profiles-module|

Structure of files and where to touch to modify as you please

  • Ports: Vagrantfile
  • Synced folders: Vagrantfile
  • Installation and provisioning of the VM: puppet/manifests/site.pp --> in this file, there are two "classes" used that are defined as per below:
    1. Stuff about installation of LDAP: puppet/modules/aegee_ldap/manifests/init.pp
    2. Stuff about installation of OMS: puppet/modules/aegee_oms_modules/manifests/init.pp

Versions of Node.js and npm

As defined in scripts/upgrade_node-npm.sh, the versions are:

  • node 4.1.2
  • npm 2.14.4

oms-development-vm's People

Contributors

linuxbandit avatar ingomueller-net avatar

Watchers

Pavel Zbornik avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.