You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@metron.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2018/11/13 17:46:00 UTC

[jira] [Commented] (METRON-1860) Improve full dev experience by using docker and vagrant together

    [ https://issues.apache.org/jira/browse/METRON-1860?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16685529#comment-16685529 ] 

ASF GitHub Bot commented on METRON-1860:
----------------------------------------

GitHub user ottobackwards opened a pull request:

    https://github.com/apache/metron/pull/1261

    METRON-1860 [WIP] new developer option for ansible in docker to deploy to vagrant

    The goal of this PR is to provide a new "full_dev" option for new and old users that does not require as much setup and version matching to try Metron's full dev environment.
    
    Currently, the vagrant up command runs ansible locally, on the host machine, to build and deploy metron.  This means that the user must not only have Vagrant, Virtual Box and Docker, but must also have all the tools necessary to build metron ( maven, java, c++ 11 etc ) and run ansible ( python and others ).  It has been a common source of problems for new users to get started with Metron because of version or setup problems.
    
    This PR introduces a new metron-deployment/development option which tries to address this problem, and make it possible for the user to only have Vagrant, VirtualBox and Docker ( along with a local copy of the source ) to be able to run full dev.
    
    The new option starts the Vagrant VM, but does not run ansible in it. Instead it runs a docker container which contains all the tools/versions necessary, and that container is what runs ansible.
    
    This is a WIP, I am looking for initial feedback.
    
    ##Testing
    Have the correct versions of vagrant, virtual box and docker installed and running
    ```
    cd $METRON_SRC_ROOT/metron-deployment/development/centos6_docker_build
    ./build_and_run.sh
    ```
    Answer yes to building the vagrant box.
    Answer yes to building the docker machine
    Go grab a coffee.
    
    The end result should be full dev running in the vagrant instance.
    
    ### Differences
    - This does not support skip tags passed on the cli
    - This does not support provision
    
    ### For all changes:
    - [x] Is there a JIRA ticket associated with this PR? If not one needs to be created at [Metron Jira](https://issues.apache.org/jira/browse/METRON/?selectedTab=com.atlassian.jira.jira-projects-plugin:summary-panel).
    - [x] Does your PR title start with METRON-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
    - [x] Has your PR been rebased against the latest commit within the target branch (typically master)?
    
    
    ### For code changes:
    - [x] Have you included steps to reproduce the behavior or problem that is being changed or addressed?
    - [x] Have you included steps or a guide to how the change may be verified and tested manually?
    - [-] Have you ensured that the full suite of tests and checks have been executed in the root metron folder via:
      ```
      mvn -q clean integration-test install && dev-utilities/build-utils/verify_licenses.sh 
      ```
    
    - [-] Have you written or updated unit tests and or integration tests to verify your changes?
    - [-] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)?
    - [x] Have you verified the basic functionality of the build by building and running locally with Vagrant full-dev environment or the equivalent?
    
    ### For documentation related changes:
    - [-] Have you ensured that format looks appropriate for the output in which it is rendered by building and verifying the site-book? If not then run the following commands and the verify changes via `site-book/target/site/index.html`:


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/ottobackwards/metron vagrant-docker

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/metron/pull/1261.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1261
    
----
commit 1ac44c0d78b25113a5ebe807baccf160ef9af139
Author: Otto Fowler <ot...@...>
Date:   2018-11-09T03:51:56Z

    Initial commit - This provides an environment where only vagrant and docker ( and a copy of the metron codebase ) are required to run the Metron
    full-dev vm with it's default setup.
    
    This is the initial work, there will be refactorings

commit f54cc493f8e045d5f0ca669258f56a5576b92ad1
Author: Otto Fowler <ot...@...>
Date:   2018-11-13T17:32:38Z

    refactored locations

----


> Improve full dev experience by using docker and vagrant together
> ----------------------------------------------------------------
>
>                 Key: METRON-1860
>                 URL: https://issues.apache.org/jira/browse/METRON-1860
>             Project: Metron
>          Issue Type: Improvement
>            Reporter: Otto Fowler
>            Assignee: Otto Fowler
>            Priority: Major
>
> Many new users have trouble getting full dev to run correctly.  Setting up the environment to build metron and run the ansible is often a problem.
> We already have a docker container for fully building metron, that could also be used for running ansible.
> The idea to explore is the following:
>  # run vagrant up, but without ansible, just stand up the base image
>  # run docker to run the ansible playbooks against the vagrant machine
>  # ???
>  # profit



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)