Experimental CI setup available
by Nikolai Kondrashov
Hi everyone,
I've thrown together a basic experimental setup of a continuous integration
(CI) system, and I'd like to gather feedback and ideas for further
development.
For now it is Jenkins with two slaves (Fedora 20 and RHEL 7) running on Brno
Lab VMs:
http://sssd-ci.idm.lab.eng.brq.redhat.com:8080/
It polls "master" and "sssd-1-11" branches every 5 minutes and builds *every*
new commit.
These builds are done by "public_*" projects.
It supports "push-to-CI" workflow, where you can push to either "master" or
"sssd-1-11" branches of sssd-ci.idm.lab.eng.brq.redhat.com:/srv/ci/sssd.git,
authenticating with ssh keys you use to connect to Lab VMs. Like this:
git remote add ci sssd-ci.idm.lab.eng.brq.redhat.com:/srv/ci/sssd.git
git push ci HEAD:master
As a result of the above, builds for every commit not in public master (as of
at most 5 minutes ago) will be scheduled. If public branch you're pushing to
has newer commits than your branch, the push will be refused. Feel free to
either use "--force" option, or rebase.
These builds are be done by "private_*" projects.
All builds are done using "reconfig" and "chmake".
Please feel free to try this out.
Now onto not so good news.
Jenkins and its plug-ins seem to be aimed at simply building the latest state
of a branch. As they're tightly integrated to provide the simplest solution
possible, it is hard to make it do anything else. Including building arbitrary
commits, or just building every commit. As a result many things don't quite
work optimally. Including:
A build will not have a link to a Git commit, if it was built in the previous
build. This doesn't seem to be easily fixable.
Notifications about push-to-CI build results will have irrelevant build
statuses, saying things like "build is fixed", or "build is broken". Fixing
this (if it's possible) will involve writing Groovy scripts and applying
hacks.
Builds can only be named with full Git hash, no short hash possible. Fixing
would involve writing Java code and somehow deploying it through the plug-in
system.
Aggregating builds of a single commit, say done on different systems, isn't
possible meaningfully.
It is impossible to reliably produce links to scheduled builds at the moment
of pushing the changes with "push-to-CI". The have to be found in the
project logs manually. And no, search doesn't work for git hashes, and they
can't be used in URLs.
Not related to Jenkins' focusing on latest state building:
Only some result files (test logs ATM) are archived with the builds, as
compression is not quite supported and disk space is limited.
Issues not related to Jenkins:
For now, push-to-CI build result delivery only works for people whose username
matches local part of their e-mail address.
Current setup has very limited capacity: only one build at a time on each of
the two slaves. This is done to simplify testing and maintenance at the
initial phase and is fixed easily.
There are probably some more issues I forgot to mention, but this will do for
now.
As soon as we get some agreeable configuration with Jenkins, I'll try to do a
setup with Buildbot, which doesn't have some of the issues mentioned and we'll
see if we like it better.
Sincerely,
Nick
10 years, 1 month
[Patch] Cmocka unit test for negcache.c module
by Pallavi Jha
Hi,
I have attached the test patch for negcache.c module along with the mail.
I could not write test for the last function sss_ncache_prepopulate(). I
have doubt regarding the initialization of the arguments to be passed to
sss_ncache_prepopulate(). Please review the patch.
Thanks,
Pallavi
10 years, 1 month
Fwd: F21 Self Contained Change: Add amd map parser to autofs
by Dmitri Pal
Is there any impact on SSSD autofs integration with this proposed change?
-------- Original Message --------
Subject: F21 Self Contained Change: Add amd map parser to autofs
Date: Thu, 06 Mar 2014 12:48:42 +0100
From: Jaroslav Reznik <jreznik(a)redhat.com>
Reply-To: devel(a)lists.fedoraproject.org
Organization: Red Hat, Inc.
To: devel-announce(a)lists.fedoraproject.org
= Proposed Self Contained Change: Add amd map parser to autofs =
https://fedoraproject.org/wiki/Changes/Add_amd_map_parser_to_autofs
Change owner(s): Ian Kent<raven(a)themaw.net>
The am-utils package provides automount services for automount maps that use
an amd format. However, the am-utils project has not been actively maintained
for quite a while now.
The am-utils package in Fedora has significant problems that are not easily
resolved so an amd format parser is to be added to the autofs package.
== Detailed Description ==
The am-utils package provides automount services for automount maps that use
an amd format. Unfortunately the am-utils project has not been actively
maintained for quite a while now.
The am-utils package in Fedora has significant problems that are not easily
resolved so an amd format parser is to be added to the autofs package.
The goal is to implement enough of the am-utils amd map parsing functionality
to cover a large portion of the use cases provided by the am-utils package.
Once this is done it will be up to users to describe the missing am-utils
feature they need which will then be considered for addition in the upstream
implementation.
== Scope ==
The implementation of this functionality is restricted to the autofs package.
Some areas of this change will require changes to code common to the autofs
parser and the amd parser and the amd parser will leverage existing autofs
functionality but there is a high level of code separation because of the way
parse modules are added to autofs.
Initially the change will be added as a path series to the autofs package,
later when an upstream beta is released the source will be updated, finally
when autofs-5.1.0 is released the source will updated again.
The release schedule has not been decided yet but the plan is to release a
beta soon followed by 5.1.0 with the timing dependant on community feedback.
Not all the changes (planned for 5.1.0 but not the amd parser itself) will be
included in 5.1.0, they will be added as time permits via minor version
updates. This is because the amd parser is considered an important feature and
needs to be made available sooner rather than later.
* Proposal owners: upstream the change is nearly ready to be committed to the
master branch and a beta released. If the beta is released soon enough
updating the Fedora autofs package source is all that will be needed. If not
then the existing patch series can be added to the autofs package in the mean
time.
* Other developers: N/A (not a System Wide Change)
* Release engineering: N/A (not a System Wide Change)
* Policies and guidelines: N/A (not a System Wide Change)
_______________________________________________
devel-announce mailing list
devel-announce(a)lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel-announce
10 years, 1 month
[PATCH] IPA: Do not save intermediate data to sysdb
by Jakub Hrozek
Hi,
the attached patch fixes
https://bugzilla.redhat.com/show_bug.cgi?id=1071578
The problem was that the intermediate computing we did added an
originalMemberUser attribute to sysdb_attrs that was never intended to
be stored in sysdb. But because we stored the attributes after the
computing, we also stored originalMemberUser.
When sssd was online, this wasn't a problem as the cache got purged and
recreated again, but when offline, adding another originalMemberUser
added a duplicate attribute so storing the rules failed with EEXIST and
the user was assigned a default rule.
Another improvement might be to only delete and store the rules when
online -- right now the logic is a bit strange when offline as we read
rules from the cache, delete them and then store the same rules again.
10 years, 1 month
initializing ding-libs with bytes (rather than with file)
by Yassir Elley
Hi Dmitri,
When reading an INI file using SMB, the GPO code receives the data as an array of bytes. Once received, it writes the data to a local file, but only so that it can use the ini_config library to parse that local file. I would much prefer to just parse the bytes directly, without writing out the data to a local file. Can the ini_config library be initialized with a byte array, or can it only be initialized with a filename?
Regards,
Yassir.
10 years, 2 months
[PATCH] config API: prepend source dir search path for tests
by Sumit Bose
Hi,
I came across this while testing some changes to the config API.
Additionally I realized that the config API opens every file in
schemaplugindir (.../sssd.api.d) including hidden ones starting with a
'.'. This might lead to test failures if backup copies or swap file of
running editors are read. Since this is primarily an issue on developers
systems I wonder if this should be fixed or not?
bye,
Sumit
10 years, 2 months
[PATCH] config API: read only specific files from schemaplugindir
by Sumit Bose
Hi,
as mentioned earlier on this list the python config API currently reads
any file from /usr/share/sssd/sssd.api.d which might result in all kinds
of strange errors if e.g. editor swap or backup files can be found in
this directory.
With this patch only files matching the pattern '^sssd-.*\.conf$' are
read from this directory.
bye,
Sumit
10 years, 2 months
[PATCH] SUDO: AD provider
by Sumit Bose
Hi,
this patch provides the AD sudo provider and is "inspired" by Lukas'
"SUDO: IPA provider" patch.
I do not have an AD setup with sudo rules. It would be nice if someone
with such setup can run some basic test otherwise I can/have to do some
additional testing.
Patches for master and 1.11 are attached.
bye,
Sumit
10 years, 2 months