Author Archives: Loic Dachary

Teuthology docker targets hack (3/3)

The teuthology container hack is improved so each Ceph command is run via docker exec -i which can read from stdin as of docker 1.4 released in December 2014. It can run the following job machine_type: container os_type: ubuntu os_version: … Continue reading

Posted in ceph, docker | Leave a comment

Why are by-partuuid symlinks missing or outdated ?

The ceph-disk script manages Ceph devices and rely on the content of the /dev/disk/by-partuuid directory which is updated by udev rules. For instance: a new partition is created with /sbin/sgdisk –largest-new=1 –change-name=1:ceph data –partition-guid=1:83c14a9b-0493-4ccf-83ff-e3e07adae202 –typecode=1:89c57f98-2fe5-4dc0-89c1-f3ad0ceff2be — /dev/loop4 the kernel is … Continue reading

Posted in ceph | Leave a comment

How many PGs in each OSD of a Ceph cluster ?

To display how many PGs in each OSD of a Ceph cluster: $ ceph –format xml pg dump | \ xmlstarlet sel -t -m “//pg_stats/pg_stat/acting” -v osd -n | \ sort -n | uniq -c 332 0 312 1 299 … Continue reading

Posted in ceph | 3 Comments

Gitlab CI runner installation

The instructions to install GitLab CI runner are adapted to Ubuntu 14.04 to connect to GitLab CI and run jobs when a commit is pushed to a branch. The recommended packages are installed except postfix and with ruby2.0 and ruby2.0-dev … Continue reading

Posted in gitlab | Leave a comment

Gitlab CI installation

Assuming a GitLab container has been installed via Docker, a GitLab CI can be installed and associated with it. It needs a separate database server: sudo mkdir -p /opt/mysql-ci/data docker run –name=mysql-ci -d -e ‘DB_NAME=gitlab_ci_production’ \ -e ‘DB_USER=gitlab_ci’ \ -e … Continue reading

Posted in docker, gitlab | Leave a comment

Copy a github pull request to gitlab

A mirror of a github repository is setup and contains two remotes: gitlab git@workbench.dachary.org:tests/testrepo.git (push) origin https://github.com/loic-bot/testrepo (push) The github2gitlab command of gh (run from ~gitmirrors/repositories/Tests/testrepo) creates a merge request in gitlab by copying the designated pull request from github: … Continue reading

Posted in gitlab | Leave a comment

Ceph read-only mirror on gitlab

The gitlab-mirrors scripts are installed to setup a a read-only Ceph mirror, updated hourly. It is used for permalinks such as src/osd/ClassHandler.cc#L170.

Posted in ceph, gitlab | Leave a comment

HOWTO debug a teuthology task

To debug a modification to a ceph-qa-suite task ( for instance repair_test.py), a teuthology target is locked with: $ ./virtualenv/bin/teuthology-lock –lock-many 1 –owner loic@dachary.org $ ./virtualenv/bin/teuthology-lock –list-targets –owner loic@dachary.org > targets.yaml and used to run the test with: ./virtualenv/bin/teuthology \ … Continue reading

Posted in ceph | Leave a comment

Gitlab workbench

Gitlab is installed on http://workbench.dachary.org using docker images. redis is installed first, as an independant container: docker pull sameersbn/redis:latest docker run –name=redis -d sameersbn/redis:latest then MySQL docker pull sameersbn/mysql:latest docker run –name=mysql -d \ -e ‘DB_NAME=gitlabhq_production’ \ -e ‘DB_USER=gitlab’ \ … Continue reading

Posted in gitlab | Leave a comment

Teuthology docker targets hack (2/3)

The teuthology container hack is improved to snapshot the container after Ceph and its dependencies have been installed. It helps quickly testing ceph-qa-suite tasks. A job doing nothing but install the Firefly version of Ceph takes 14 seconds after the … Continue reading

Posted in ceph, docker | Leave a comment