Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue 211: Dockerize #277

Merged
merged 9 commits into from
Apr 12, 2020
Merged

Issue 211: Dockerize #277

merged 9 commits into from
Apr 12, 2020

Conversation

idodin
Copy link
Member

@idodin idodin commented Mar 23, 2020

Description

Dockerizes application and implements consequent changes:

  • Implements Dockerfile
    • Dockerfile installs Git and sets required Git user config values for HTTPS pulling (used in update command)
    • Dockerfile exports poetry requirements and then installs with pip in order to make use of Docker build cache
    • Dockerfile runs Main.py
  • Adds Meta section and Repository variable to config.ini to allow us to specify the exact repository to pull from for update command. (n.b. this is required as we must mount our host directory as a volume into the container and as such, the origin remote is set to whatever it is on the host. In order to avoid restricting developers to a single remote protocol (SSH or HTTPS), this allows the update command to pull from whatever branch is active on the host via HTTPS on this repository.)
  • Update update command to pull via HTTPS strictly.

Motivation and Context

See #211 for details on this. This change allows portability across environments and takes us one step closer to fully automating our release process.

How Has This Been Tested?

Tested most commands locally - tested update repeatedly.

Screenshots (if appropriate):

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.

idodin added 4 commits March 23, 2020 05:12
Implements Dockerization for the application.
Docker builds by freezing Poetry requirements, installing them with pip
and setting the git remote for the !update command.
Resolves #211
Removes redundant parsing of the current branch in the update command
implementation.
Updates README with changes pertaining to Dockerization (Docker commands
and new Repository configuration variable).
config/config.ini Outdated Show resolved Hide resolved
config/config.ini Outdated Show resolved Hide resolved
config/config.ini Outdated Show resolved Hide resolved
Dockerfile Outdated Show resolved Hide resolved
idodin added 2 commits April 8, 2020 00:00
Addresses comments by @jidicula to use the collective gmail address in
Git config.
Improves format and commenting of Dockerfile.
@idodin idodin requested review from jidicula and davidlougheed April 8, 2020 04:03
Require requirements to be frozen prior to installation to cache
independent of pyproject.toml .
This change allows flexibility for faster builds while bumping versions
of project.
Copy link
Member

@davidlougheed davidlougheed left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@idodin idodin merged commit 539cbf7 into dev Apr 12, 2020
@jidicula jidicula deleted the issue-211 branch December 16, 2020 14:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants