Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
Tim Jacomb
@timja
Can you log in as the user once and then create the api token via API?
there's a PR to hopefully make the second bit easier:
jenkinsci/jenkins#4027
RE: 1
We keep the build history via a docker volume and just upgrade on top of it, if there's every any issues we can just delete the volume and start from scratch
Ignacio Tolstoy
@naxhh
I don't think you can login to the api using user/pass when using ldap, but i'll ask my team mate since he is doing it.
Regarding the second, what is the path of the volume? that may work for us, but I thought config and logs where under the same path (my knowledge of jenkins is not that strong)
Tim Jacomb
@timja
/var/jenkins_home I believe
config is under the same path as well, but casc will just override it
Ignacio Tolstoy
@naxhh

ok! that last part is the one that i didn't know! thanks @timja!

Regarding the API, no, we can't use user:password for auth with ldap. That's why we need the api token, but there's no way to generate it unless we manually create it or a job does it for us (if it's possible)
That last approach is the one we are testing, but feels very hacky

Regarding jenkinsci/jenkins#4027 it looks that will be what we are looking for, so I'll keep an eye on it.
nguyenhugh
@nguyenhugh
@oleg-nenashev | Thank you, I will have a look!
Oleg Nenashev
@oleg-nenashev
Hi all. Looks like I forgot to send a message here. I am traveling this week, and I am unable to run the recording
Tim Jacomb
@timja
Can you set the meeting so we can start it without you?
Oleg Nenashev
@oleg-nenashev
If somebody records the video (e.g. using a free Zoom account), I will get the video posted on YouTube later
Sladyn
@sladyn98
I wont be able to attend too, Getting late for class :P
Tim Jacomb
@timja
:thumbsup:
Tim Jacomb
@timja
@casz you joining?
Tim Jacomb
@timja
Oleg Nenashev
@oleg-nenashev
Thanks!
And sorry for the late notice
Tim Jacomb
@timja
no worries, was fine
030
@030
@casz git version 2.17.1 and git lfs returns the help menu of git lfs. I found a workaround to enable git-lfs in the UI and updated the Q&A on devops SE that was mentioned earlier.
Joseph Petersen
@casz
@030 i was referring to the version of git plugin :)
Oleg Nenashev
@oleg-nenashev
Got the recording published for the today;s session: https://youtu.be/WBrT6xYbhm0
Jake Burns
@burnsjake
Is there a good howto on how to bootstrap a brand new jenkins installation (without docker) with the configuration as code plugin?
@burnsjake just follow getting started, install the configuration-as-code plugin.
Export your desired configuration to a yaml file, then store it
Mark Waite
@MarkEWaite
@burnsjake that information is also available from https://plugins.jenkins.io/configuration-as-code, though not yet as convenient to hyperlink as the github.com page.
Jake Burns
@burnsjake
@MarkEWaite @timja , I'm confused as to how I'd install the CasC plugin without manually going through the first-use. I'm looking to do this without docker.
Mark Waite
@MarkEWaite
@burnsjake There probably is a way to initiate a Jenkins installation that also installs the configuration as code plugin, but most efforts to automate at that level of installation are done with Docker. If you're using one of the operating system packages (rpm, deb, msi), then after the installation and selecting the recommended plugins, you would use the plugin manager page to install the configuration as code plugin.
Jake Burns
@burnsjake
Yup, using aptitude to install on ubuntu. But there are no apt packages to install separate plugins. I'm fairly surprised this hasn't been sussed out yet.
Mark Waite
@MarkEWaite
Already complicated enough to maintain 3 different installer packages for the main package (deb, rpm, msi) with no solid consensus for techniques to manage add-ons between the various Linux distros and Windows. Should we style after python pip or ruby gems or golang or ...
Jake Burns
@burnsjake
My thought is to install via aptitude, stop jenkins immediately, add JAVA_ARGS="-Djava.awt.headless=true -Djenkins.install.runSetupWizard=false" to /etc/default/jenkins, add an admin user with a groovy script into /usr/share/jenkins/ref/init.groovy.d/security (optional?), Install a plugin manually (???), PROFIT!
Jake Burns
@burnsjake
A plugin being the CasC plugin.
Joseph Petersen
@casz
@burnsjake why won't you use docker? :confused:
for installing plugins
Tim Jacomb
@timja
@oleg-nenashev did you want to do a jcasc release soon?
Someone just asked on github:
https://github.com/jenkinsci/configuration-as-code-plugin/pull/1053#issuecomment-535865314
Daniel Estermann
@d.esterman_gitlab
I also wait for a release to test if ConfiguratorException: serverAuthenticationToken is required to configure class hudson.plugins.sonar.SonarInstallation has been fixed
Robert Sandell
@rsandell
Hello, I'm working on fixing JCasC support for the git-client tool installations, and it's a bit of an unusual beast to fix.
Mark Waite
@MarkEWaite
That is the understatement of the year. @rsandell .
Robert Sandell
@rsandell
My second attemt I thought was a clever and beautiful hack where I used readResolve to "fix" the things that jcasc was doing wrong when using the databound constructor logic
But alas it turns out that jcasc is not calling readResolve after creating the objects.
Mark Waite
@MarkEWaite
Ah, that hurts.
I had an alternate hack technique that came to mind. Would love to hear your thoughts on my hack idea.
Robert Sandell
@rsandell
It's not clear cut to me now that I'm thinking about it if it should or not. XStream does it after deserializing from disk. but in form submission it doesn't. And perhaps JCasC is a bit of both or somewhere in between.
Mark Waite
@MarkEWaite
There are only two special strings that identify the JGit implementations, "jgit" and "jgitapache". What if the git client plugin data bound constructor for CliGit detected one of those two strings and called out to the JGit implementation instead?
I assume (my guessing) that making JCasC call readResolve is a much more invasive change that the team will be ready to make. It will invoke many pieces of code that had not been run before in this context
Robert Sandell
@rsandell
Well you can't really construct another object from the constructor
my readresolve does that; detecting if name is the magic name and in that case returns the appropriately constructed object
Mark Waite
@MarkEWaite
Could the CliGit data bound constructor somehow "queue" a call to readResolve if it detects it is called in from JCasC?