Yeah, CIs are very confusing. I gave up on publishing my project to PyPI using GitLab CI just because it was too hard. Having a Docker container with the environment locally eases the pain, since you can experiment with deployment pipeline and then construct a script which will work from the first time and won't fill up your repositories with countless "CI fix" commits.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.