Skip to main content

Setting up Hanlon Development Environment (Update)

This is an update to my previous post Setting up Hanlon Development Environment. This update reflects the latest script changes incorporated

Pre-requisites

Operating System: Support any standard Linux distribution (Ubuntu LTS 14.04)
Database: MongoDB
Web Server: Trinidad
Dev Tools: JRuby development enviroment with necessary gems
Others: git, make, openjdk7, etc.,

Setting up

Update your linux to get all the latest distributions

apt-get install updates

1. Install pre-requisites

apt-get install -y git make mongodb openjdk-7-jre-headless g++ curl

 

2. Install ruby environment with your preferred Ruby environment manager like rvm or rbenv (I prefer using rvm) and setup jruby as your default environment

\curl -sSL https://get.rvm.io | bash -s stable --ruby=jruby
source /usr/local/rvm/scripts/rvm
rvm use jruby –default

 

3. Setup Hanlon working directory (My preferred location ~/wspace/hanlon) and clone hanon git repository

cd
mkdir wspace
git clone
https://github.com/csc/Hanlon.git hanlon

 

4. Install / update ruby gems

cd hanlon
bundle install
gem install bundler trinidad

Hanlon now comes with scripted support both for trinidad and puma. (I prefer running trinidad)

 

5. Run hanlon initialization script

./hanlon_init.rb

This script creates config file and necessary directory structure to run hanlon.

 

6. Edit hanlon client and server configuration files

Now hanlon client and server configuration files are segregated to reflect right configuration parameter. Files created by hanlon_init (samples included below) are suitable for most of the practical purpose. Do edit them (just in case) before starting the server

~/wspace/hanlon/cli/config/hanlon_client.config

# This file is the main configuration for ProjectHanlon
#
# -- this was system generated --
#
#
--- !ruby/object:ProjectHanlon::Config::Client
noun: config
admin_port: 8025
api_port: 8026
api_version: v1
base_path: /hanlon/api
hanlon_log_level: Logger::ERROR
hanlon_server: 192.168.190.11
http_timeout: 60

~/wspace/hanlon/cli/config/hanlon_server.config

#
# This file is the main configuration for ProjectHanlon
#
# -- this was system generated --
#
#
--- !ruby/object:ProjectHanlon::Config::Server
noun: config
admin_port: 8025
api_port: 8026
api_version: v1
base_path: /hanlon/api
daemon_min_cycle_time: 30
force_mk_uuid: ''
hanlon_log_level: Logger::ERROR
hanlon_server: 192.168.190.11
hnl_mk_boot_debug_level: Logger::ERROR
hnl_mk_boot_kernel_args: ''
image_path: /home/user/wspace/hanlon/image
ipmi_password: ''
ipmi_username: ''
ipmi_utility: ''
mk_checkin_interval: 60
mk_checkin_skew: 5
mk_gem_mirror:
http://localhost:2158/gem-mirror
mk_gemlist_uri: /gems/gem.list
mk_kmod_install_list_uri: /kmod-install-list
mk_log_level: Logger::ERROR
mk_tce_install_list_uri: /tce-install-list
mk_tce_mirror:
http://localhost:2157/tinycorelinux
node_expire_timeout: 300
persist_dbname: project_hanlon
persist_host: 127.0.0.1
persist_mode: :mongo
persist_password: ''
persist_port: 27017
persist_timeout: 10
persist_username: ''
register_timeout: 120
sui_allow_access: 'true'
sui_mount_path: /docs

 

7. Run trinidad server

cd web
./run-trinidad.sh

Comments

Popular posts from this blog

Evolving App Paradigm

Over last two decades we have seen enterprise application landscape changing very rapidly with rapidly evolving technology stacks and changing industry dynamics. It is time for another paradigm shift in terms of how we conceptualize, design, develop, test and maintain our applications to meet volatile business requirements. Some of the prime features of this evolving paradigm Flexible business user centric infrastructure (than IT centric) IT as a service model with emphasis on user self service. Flexible development and deployment infrastructure which is readily available over cloud (no setup time, no high budgets and initial spending) Develop application using modern development languages which help improve the developer Usage of more dynamic meta programming languages Reusable assets, code generators, ... Build once and run anywhere across platforms and devices End-to-End application lifecycle integration through ALM and DevOps Improve communication and collaborat...

Do we know the enterprise IT challenges...???

Last night during the dinner chat with one of my old school pal, we stumbled on the topic of current issues that enterprises are stuck with. It went on almost for 30 mins. But what made it less interesting to me is that whole discussion was around cost cutting, our sourcing, rationalization etc., It is really boring, we are still taking about the tip of iceberg. But the question is due we really know what the real challenges are. I am not talking about a laundry list with 30/40/50 items. I am looking why we really have those items? (whatever the count is). I could not get this out of mind and started listing, order, consolidating, prioritizing those items to make sure I am completely confident that as a consultant I am doubly sure about them. Of course, it is debatable. But this is what I think are core problem and rest of list is the symptoms. 1. Dynamic market conditions are forcing business to adopt rapidly while IT is able to respond to this 2. Day by day IT is becoming exp...

AI gets smarter and more practical

We all know AI is coming to the forefront of technology in the form of machine learning (ML) and deep neural networks, where AI can understand the surroundings and apply that information to the current context, whether it is about data pattern analysis or driving a vehicle. Coupled with increasing capabilities of AI hardware, in 2018 we can expect: AI research will reach new heights in the fields of neural networks and generative adversarial networks. Cooperative learning among networks will lead to hybrid intelligence. Continuous evolution of AI will empower enterprise-scale business processes with intelligence and agility. AI will redefine the IT landscape with smart machines and borg systems. Read the complete article on DXC technology trends for 2018