I've read the "getting started with pipeline" pages (https://jenkins.io/doc/book/pipeline/getting-started/).
I've spent literally hours looking for something really helpful, in one place, for someone who wants to write CODE in the pipeline script. I did just find https://jenkins.io/doc/book/pipeline/syntax/, which is a great step in the direction I was looking for. However, an update. I've been searching around and gotten a lot further, but I want more, quicker. I should mention that I've been a software developer for many years (oh, what, 40 or so? C, C++ primarily, but a little Java), I teach a class called "Linux Operating System" at a community college (have been for 3 years or so), I write scripts (bash, python, perl, etc) all the time, so I hope I have more than a small clue about 'things'. I note that Jenkins World is coming soon to SF. Perhaps that's the best place to learn/etc... Here's the deal. I'm trying to Jenkins-ize our test infrastructure. Right now it is all done via shell scripts and ssh. However, it's a monolith. You set your configuration for each test host (in a pretty big config file), start the run, and wait (up to more than a day! (sometimes multiple days)) for the test run to complete. When the test run completes, a script runs which generates a report, including of what tests ran, which of those that ran failed, and so forth (NOTE that just because a single test fails does NOT mean we want to kill the entire test run). Oh, yes - I should mention that the test run involves MULTIPLE test hosts, each running basically independently of each other. Once a test host finishes its test run, it is available for another test run. Every day we build our system and that triggers a full test run, as defined by a config file (which defines which hosts to run, and the test config file to use for that host - each host can have a different test configuration. Indeed, it can have a completely different product being tested). To do a test run on a host, we first run some scripts on the server which sets up the global environment (we monitor serial port activity and store the output in a log file in the test report directory, for example), then we set up stuff on the test host (which starts out running Linux) for the test to come. Right now, MOST of our tests are run under FreeDOS (don't ask - we currently have no choice in that matter), then when those tests finish the host reboots into Linux, runs any Linux-based tests, and then runs 'finish', which copies the logs to the server, creates the test report, and emails it to a specified group. For one thing, we'd like to have better visibility into the progress of the test (even possibly with partial results), and the ability to stop the testing at any stage in the process fairly easily. So, I'm working on re-doing it all with Jenkins driving things. Right now I've got one pipeline which will use a config file to specify which test hosts (and configuration) to start running - its more or less done (reads config file, parses, does what it says). I've got another pipeline which runs the 'setup global environment' script, and which I've just proven works fine, as far as it goes. No scripts AFTER that have been implemented... I'm working on implementing the rest of the thing (both the 'actually start the run' part that happens after the global environment setup, and all the different stages. Right now I've got a pipeline which parses another config file and runs the scripts specified (and their command-line args). It kind of works too, but I'm thinking that the command-line args are way too unfriendly for 'normal' users. So, I'm halfway competent (which means at least 50% INcompetent!), but feel like if I knew a bit more I'd not rush down a path that I'll have to redo later. Are there any good documents to help me move more into the competent phase? As I asked above, is Jenkins World the best place (bang for buck)? Thanks! Rusty -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/BY2PR0401MB09661B1CC7B181FFBF46F0129DB30%40BY2PR0401MB0966.namprd04.prod.outlook.com. For more options, visit https://groups.google.com/d/optout.