Child pages
  • IG Induction
Skip to end of metadata
Go to start of metadata

Prerequisites

Assumes basic inductions completed:

Assumes guidelines:

Infrastructure

Mentor to add the new hire to the appropriate online resources:

Calendars

  • Edge Team: for holidays, meaningful events
  • Edge Sprint Demo: add invitee
  • IG Sprint: add invitee
  • IG Standup: add invitee
  • Grenoble:
    • Grenoble holidays: if you're in Grenoble, record your vacations here
  • Bristol: ?

Slack

IG

  • #ig
  • #ig-dev
  • #ig-backend
  • #ig-engineering
  • #ig-vcs
  • ...

Edge

  • #fr-edge-team: private for team members (management)
  • #edge-engineering

Set-up

Laptop setup

Development environment setup:

  • java
  • maven
  • git/ stash
  • Bitbucket
  • IntelliJ (Community-only)

Git issues on Mac:

  • Download git - if not installed:
    • There is an issue where your git installation may be overridden by the MacOS (Xcode) veneer. To overcome this:
      • Don't bother trying to mv /usr/bin/git /usr/bin/git/system - as the Mac security does not permit this (even as root)
      • Just confirm your git installation is working and alias it:
      • See below:

        overriding MacOS git veneer
        # git command line fails after install - even if found on $PATH ok
        10:22:00 3 $ which git
        /usr/local/bin/git
        10:22:37 4 $ git
        xcode-select: note: no developer tools were found at '/Applications/Xcode.app', requesting install. Choose an option in the dialog to download the command line developer tools.
        # installation fine though
        10:22:40 5 $ /usr/local/bin/git
        usage: git [--version] [--help] [-C <path>] [-c name=value]
                   [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path] ...
        # sudo mv MacOS git not permitted - even logged in as root!
        sudo mv /usr/bin/git /usr/bin/git-system
        Password:
        mv: rename /usr/bin/git to /usr/bin/git-system: Operation not permitted
        # fix is to alias - add to ~/.bash_profile
        alias git=/usr/local/bin/git
        10:34:30 23 $ git
        usage: git [--version] [--help] [-C <path>] [-c name=value]
                   [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path] ...

Codebase setup

IG git repos:

For each desired repo, fork then clone...

  • Instructions:
    • Create your own ssh key (ssh-keygen)
    • From the master repo, fork it:

      • Forking it allows you to have your own copy of the repo.

    • Clone your forked repo on your laptop - with command line or with SourceTree:

      • e.g. git clone ssh URL of your new forked repo

        clone your repo
        # generate ssh key
        10:10:56 132 $ ssh-keygen
        Generating public/private rsa key pair.
        Enter file in which to save the key (/Users/wayne.morrison/.ssh/id_rsa): 
        Created directory '/Users/wayne.morrison/.ssh'.
        Enter passphrase (empty for no passphrase): 
        Enter same passphrase again: 
        Your identification has been saved in /Users/wayne.morrison/.ssh/id_rsa.
        Your public key has been saved in /Users/wayne.morrison/.ssh/id_rsa.pub.
        
        # navigate to your forked repo and select clone to reveal the URL (use the ssh URL)
        # you may need to navigate to your repo via your user profile
        10:35:17 33 $ pwd
        /Users/wayne.morrison/dev
        10:35:18 35 $ git clone ssh://git@stash.forgerock.org:7999/~wayne.morrison/openig.git
        Cloning into 'openig'...
        ...

Pyforge setup

Pyforge is a python-based functional testing framework used by IG QA. It is also very useful in quickly configuring an environment representing a particular use-case.

It may not be immediately useful to you. To install and configure see Pyforge Installation Guide.

IG Resources

Training

If necessary:

  • No labels

1 Comment

  1. For Git, Java, Maven I highly encourage to use homebrew : https://brew.sh/ 

    Also use jenv if you need to switch between java versions.


    For Python it seems the best way to handle it is to install pyenv from brew then the desired version of Python with pyenv.