Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

How to deploy files to service.unece.org

Table of Contants

Table of Contents
exclude^How to deploy files to service.unece.org$

This how-to describes process of getting files from your local PC to service.unece.org using Repositories and Pipelines. Should be reffered to typically when a new version of UN/EDIFACT, UN/LOCODE or other deliverable hosted on service.unece.org is produced and needs to be published.

 

Info
titleTerms
  • Local Repository - Folders and files on your Local PC,
  • Remote Repository - Folders and files on remote Server, these files are used by Pipeline
  • Clone - Process of copying files from the Remote Repository to the Local Repository
  • Commit - Finalazing a change in files, should contain commed describing reason of the change
  • Push - Process of moving changes from Local Repository to Remote Repository, One Push can contain multiple commits
  • Pipeline - Automated process for moving files between environments (typicaly Remote Repository → Stage → Production)
  • Stage - Staging / Testing / Quality Assurance (QA) environemnt, serves for final validation of files before moving them into Production environemtn (service-qa.unece.org)
  • Production - Production environment, final destination of our files (service.unece.org)

(not covered, Pull (to be added), Pull-request, Branch, Merge, another billion of Git's features etc. ...)

Diagram

Simplified diagram of the whole process:

Gliffy Diagram
nameFiles-Deployment
pagePin8

Resources

Repository Web interface

Repository GUI

Pipeline Web interface

Working with Git

Official Sourcetree documentation

Step-by-step guide

Installing and Configuring tools

Sourcetree Initial configuration 

  • Download and install Sourcetree, if needed install also MS .NET Framework 7.4.1, as this requires Administrator privilegies, ask ISU for assistance
  • After Installation run Sourcetree application
  • As part of initial execution, configure Sourcetree - useraccount and tools

    1. Login to remote Repository 
    2. Authenticate user (using Windows / Active Directory credentials)
    3. If Credentials are correct, you should see confirmation
    4. Select modules for installation (we need only Git)
    5. Module installation - progress
    6. Module installation - confirmation
    7. SSH key configuration (can be skipped)

Cloning Repository

  • After Initial setup we configure and clone repositories
    1. Add a new repository
    2. On remote server, click "Clone in SourceTree" for easy configuration, or click on "Clone" and copy repository link (for Git repositories the link ends with .git)
    3. Review Cloning configuration, select local folder where files shoud be stored
    4. Run Clone and wait for process to finish

Making a change in files

  • Local repo without a change, after Initial Cloning we have a files in Local Repo the same state as they appear on Remote Repo (local repo is in sync with the remote repo)

  • Local Repository in windows explorer
  • New files (selected) to be transferred to local repo in windows explorer
  • Transfer to local repo Overwrite prompt (if updating files to a new version)

  • Transfer to Local repo running


  • We have a new files (we updated the current files) in our local repo (this is considedred as a change, another type of change is adding and removing files/folders) 
    1. New files in local repo - see file status
    2. New files in local repo - Commit Log
    3. Diff - one line change example
    4. Diff - new lines example
    5. Diff - Line change example (- removed, + added)
    6. Files Staged
    7. Adding commit message
    8. Commit user info
    9. and commit log
      1. Image Added
      2. Image Added
    10. Differences - after selecting the file we can see details of Changes 
      1. Image Added
      2. Image Added
      3. Image Added
    11. Staging files - by selecting files clicking on "Stage Selected", selected files are staged and moved to Staged file window
      1. Image Added
    12. Adding commit message - we add commit message explaining nature of the change
      1. Image Added
    13. User info for trhe first commit - we are asked to provide email (full name should be automatically populated)
      1. Image Added
      Adding mail
    14. Commit is linked to user account
    15. After commit - back in sync a Push is available
    16. After commit - Log - Push prepared
    17. Push branch selection
    18. Push running
    19. Push completed
    20. Bitbucket - Remote repo - Commits
    21. and we can click on "Commit" button to execute a commit
      1. Image Added
    22. After commit is executed, changes are prepared to be Pushed to remote repository, Push will became available
      1. Image Added
      2. Image Added
    23. Push - after clicking on "Push" button, we are asked to select branch, in this simple example we are staying in only one branch - master
      1. Image Added
    24. Push running, after clicking on Push button from branch selection, Commits (containing changes) are pushed to Remote Repository
      1. Image Added
    25. Push completed, we can see our changes in Graph view on Log/History tab
      1. Image Added
    26. Bitbucket - on Remote repo - Commits - we can also see our Commits
      1. Image Added
    27. Bitbucket - on Remote repo - Sources - we can also see each individual file together with commit message
      1. Image Added
      Bitbucket - Remote repo - Sources

Running Pipelines

  • Go to Trade Division pipelines - https://bamboo.unece.org/browse/TRADE
    1. Select desired Pipeline (in our case, as we are deploying new LOCODE Directory version - Service LOCODE)

    2. Select job (plan) to run

From Local Repository to Stage

  1. Deploy to Stage - start
  2. Deploy to Stage - running

  3. Deploy to Stage - completed

  4. Changes appear on Stage for validation (service-qa.unece.org

    1. Page
    2. Source

From Stage to Prod

  1. Deploy to production - run option 1
  2. Deploy to production - run option 2
  3. Deploy to production - running
  4. Deploy to production - completed
  5. Changes appear on Production (service.unece.org)
  6. Changes appear on Production (service.unece.org) - source view
  7. Link files to Production