question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Improving Release process

See original GitHub issue

Current process is a set of manual steps – automating these will reduce chances of errors and reduce inconsistencies: today we have 1.6.0 release version in codebase, 1.6.1 in PyPy, 1.3.4 in GitHub, latest in dockerhub with 1.6.0

Current release process is performed by @ndbroadbent (Owner; the only one with access to pypy and dockerhub), creating potential delays for releases. Distributing this role among Maintainers will reduce dependencies.

I am proposing to use github actions for creating .whl assets, publishing PyPy packages, and pushing Docker images to dockerhub on each gitHub Release publishing

Benefits:

  • All credentials to PyPy and Dockerhub remain in the hands of Owner (but have to be added to the repo secrets)
  • Github Releases can be created by Maintainers, producing releases at any schedule
  • Process is automated, consistent, and repeatable

Additionally, we can use github action for testing pull requests/commits instead of travis. Travis account will no longer be needed

Not changing:

  • coverall

Challenges:

  • implementing/testing gitlab actions may be challenging without publishing new versions

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Reactions:3
  • Comments:35 (2 by maintainers)

github_iconTop GitHub Comments

1reaction
menkejcommented, Nov 5, 2020

Hey @menkej, I’ve created some new users, given them the required permissions, and set up the GitHub secrets for PYPI_USERNAME, PYPI_PASSWORD, DOCKERHUB_USERNAME, DOCKERHUB_PASSWORD. So you should be able to use these usernames and passwords to sign in and push new PyPi packages and Docker images.

Excelllent! I hope I’ll find some time tomorrow or Saturday morning to update the Action so that - maybe - we could try the new process on this weeks release already - starting with an rc-release, of course!

1reaction
AndreyNikiforovcommented, Oct 26, 2020

@menkej here is rough plan that I have:

  1. use test personal project for experimentation
  2. add release action (to test project)
    1. look at scripts folder in this project for steps to replicate (test, publish to coverall, build whl, push to PyPi, build docker, push dockerhub)
    2. add keys for Pypi, dockerhub, coverall to GitHub secrets
  3. once the process learnt and tested
    1. ask for @ndbroadbent to add necessary keys to this repo
    2. port release work from test repo to this repo
    3. clean test project (remove dockerhub, Pypi, coverall)
  4. test release process in this repo using rc or alpha release
Read more comments on GitHub >

github_iconTop Results From Across the Web

10 Ways to Improve Your Software Release Management
Know Your Requirements: · Small Releases: · Have a solid Release Management Policy: · Keep Track of Your Processes: · Get to know...
Read more >
7 Ways to Improve Your Software Release Management - CIO
1. Understand the current state of release management. · 2. Establish a regular release cycle. · 3. Get lightweight processes in place. ·...
Read more >
8 Ways to Improve your Enterprise Release Management ...
1. Review the Existing Enterprise Release Management Process · 2. Set an Enterprise Release Strategy that clearly defines Regular Release Cycles.
Read more >
7 Release Management Best Practices To Improve Deployments
7 release management best practices · 1. Carefully define your criteria · 2. Consider a dark launch · 3. Automate processes · 4....
Read more >
The Release Management Process Explained: Optimizing IT
3 Ways to Structure Your Release Management Process for Improved Agility · 1. Standardizing Governance · 2. Real-Time Monitoring and Reporting · 3....
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found