Dockerize taskotron
AbandonedPublic

Authored by jsedlak on Feb 10 2017, 1:23 PM.

Details

Reviewers
jskladan
Summary

This creates necessary files for making Docker image from
libtaskotron's git repo.

Test Plan

run docker build -t fedoraqa/libtaskotron-git .

Diff Detail

Repository
rLTRN libtaskotron
Branch
feature/dockerize (branched from develop)
Lint
No Linters Available
Unit
Unit Test Errors
Build Status
Buildable 1050
Build 1050: arc lint + arc unit

Unit TestsBroken

Excuse: !srorre desiar gnitset tinU
TimeTest
0 ms.testing.functest_koji_utils
testing/functest_koji_utils.py:8: in <module> from dingus import Dingus E ImportError: No module named dingus
0 ms.testing.functest_resultsdb_directive
testing/functest_resultsdb_directive.py:7: in <module> from dingus import Dingus E ImportError: No module named dingus
0 ms.testing.functest_yumrepoinfo_directive
testing/functest_yumrepoinfo_directive.py:8: in <module> from dingus import Dingus E ImportError: No module named dingus
0 ms.testing.test_bodhi_directive
testing/test_bodhi_directive.py:9: in <module> from dingus import Dingus E ImportError: No module named dingus
0 ms.testing.test_bodhi_utils
testing/test_bodhi_utils.py:9: in <module> from dingus import Dingus E ImportError: No module named dingus
View Full Test Results (16 Broken · 277 Passed)
jsedlak retitled this revision from to Dockerize taskotron.Feb 10 2017, 1:23 PM
jsedlak updated this object.
jsedlak edited the test plan for this revision. (Show Details)
jsedlak added a reviewer: jskladan.
jsedlak added inline comments.Feb 10 2017, 1:26 PM
conf/namespaces.yaml.docker
9–11

This is necessary because how our dockerized buildbot master works - it git clones from local filesystem, so these values are shown as origin url. We might consider changing buildbot master so that it copies instead of cloning (we could then just usenamespaces.yaml.example) or consider dropping this completely.

jskladan requested changes to this revision.Feb 10 2017, 10:18 PM
jskladan added inline comments.
Dockerfile
4

Why gcc exactly? Most of the stuff that would need compiling (I guess it's here so you can pip install -r) will need header files anyway. I'd rather install the deps directly from the repos.

6–9

maybe put these all in one RUN?

11–13

Add can work with URL's maybe we could get around needing to duplicate the configs by using the config files from the taskotron-docker repo?
In the end, I'd like for the "latest" (i.e. built from repos) and "develop" (built from gits) docker images to be as close to each other as reasonably possible, so the usage and user experience is pretty much the same.

This said, here is a crazy idea - how about we don't base the 'devel' images on Fedora, but on the respective fedoraqa/$projectname:latest image instead.
That would give us the same configs, and stuff like that. All we'd do would be replacing the app data by installing via pip over the old stuff instead (kind of like upgrading by yum, but without building the rpm).

Thoughts?

21

I guess this is an equivalent of python setup.py install

conf/namespaces.yaml.docker
9–11

Honestly this will need to change quite a lot anyway in the future - this solution (I mean as a whole in libtaskotron) is sub-par. For the scope of the docker stuff, I'd just put all the relevant namespaces to the namespaces_safe list.

conf/taskotron.yaml.docker
76

Given the rest of the urls, you probably wanted localhost instead of resultsdb.
But it does not really matter, honesly, because for the CI thing, we will need to unify the urls anyway, and I'd go with resultsdb, execdb. etc anyway.
We'll discuss this more in person next week.

This revision now requires changes to proceed.Feb 10 2017, 10:18 PM
jsedlak updated this revision to Diff 2888.Feb 13 2017, 1:26 PM
  • changes
jsedlak abandoned this revision.Wed, Aug 2, 10:28 AM
jsedlak marked 2 inline comments as done.