Jenkins Run Jar After Build

Pull Jenkins from the public repo by running: docker pull jenkins/jenkins docker run -p 8080:8080 --name=jenkins-master jenkins/jenkins. jar build args Starts a build, and optionally waits for a completion. This article illustrates how to use Blob storage as a repository of build artifacts created by a Jenkins continuous integration (CI) solution, or as a source of downloadable files to be used in a build process. Tried several ways but not working as expected. But after running stop script, tomcat server was shut down as a result Jenkins was not up. After that open the command prompt and go in to the drive where we have downloaded "selenium-server-standalone-3. Depending on your organization's needs, one may be preferred over the other. The Jenkins project produces two release lines, LTS and weekly. Hi This may not be a question for this forum, but I am hoping someone can point me in the right direction. Jenkins primary goal is to help you build and test software projects continuously. java-jar jenkins. Deploy Jenkins on. Nexus Repository Manager 3. My local build does not load aether-util-0. I am using a Jenkins platform setup in windows server. 01/22/2018; 8 minutes to read +3; In this article. 0 #205; Build failed in Jenkins: myfaces-current-2. xml file which is specified in Jenkins to run the code. In this article I will explain how to build an IIB (IBM Integration Bus v9 & v10) project and deploy the bar file to target Integration Server using Maven and Jenkins. Admin password. Configure Jenkins MSTest Tests Execution. Option1 – Polling the repository. war After the command is run, various tasks will run, one of which is the extraction of the war file which is done by. Jenkins usage and integration with selenium. Search and install these plugins from Manage Jenkins-> Manage Plugins. 08/13/2019; 9 minutes to read +4; In this article. If it runs successfully, you can set up polling of your GitHub repository, so that if a change is pushed to the repo, Jenkins will see that change and re-build and re-run your test; Simply go back to the job configuration page; Under the Build Triggers section, you should see a 'Poll SCM' checkbox. Here I will take a basic scenario and will explain all the steps. The plugin takes war/jar/ear file from build and deploys to running instance of the application server. The batch file should execute in a new command window and not on Jenkins console output. I have a JAR that I am building. In this blog post, we'll discover steps required for adding slave node in the Jenkins farm. Script console- lets you run groovy scripts on the server. In this tutorial, we will show you how to use Gradle build tool to create a single Jar file with dependencies. war But when I unplug my machine the application of jenkins goes down, as I do to get the application running at the same end my SSH session? Note: Jenkins has the jetty embedded server inside the. Is it possible that one of pom files was changed after the last successful build and this change now causes the problem. war NOTE you need to have jdk installed. It provides a framework that enables easy reuse of common build logic for all projects following Maven's standards. jar is downloaded from the Jenkins server and used to manage the nodes via the groovy cli command. I have jenkins running there for a couple of months, never did restart (by systemctl or from Web GUI) and I can see the process was start in May. Forskolin Ketoboost And Garcinia Rapid Boost How To Stay On Track With Keto Diet Books Keto For Beginners Diet Plan Get Keto Diet Plan How To Kickstart Keto Diet Meals To Eat On Keto Diet The is actually an amazing machine. :/foo:ro put the jar file in the current directory, and then in the CMD in the dockerfile, copy the jar to the place inside the container u want it. withRun[(args[, command])] {…}. jar and try to test it by specifying the localhost:8080/ in a browser. Build jobs are at the heart of the Jenkins build process. Why should we prefer executable Java Archive (JAR) file? Some of the benefits of using Java Archive (JAR) file are given below. In this article, we will talk about how to create a Jenkins job with a template by some commands. Alternative: If you are using command line you can type mvn install command. Maven exec plugin lets you run the main method of a Java class in your project, with the project dependencies automatically included in the classpath. i configured in post build action publish artifacts in to scp repository. ps1 script as a PowerShell Build Step in Jenkins. build a JAR, and deploy it. After restarting Jenkins, you should see the that the Jenkins server connects to the Jenkins agent: Now, the Jenkins should be ready to execute the build. Configure your build to write out the build version. If the test passes, Jenkins will push the code to the master branch. (Important note: it is recommended to install Jenkins on a separate machine with Internet access, it is necessary to connect your instance with the repository. Jenkins Tutorials. Jenkins has a built-in feature to build other projects. Watch this interesting video on Jenkins Installation on AWS ec2. Automate Jenkins with the CLI or the REST API Last updated: 10-Oct-2015 Jenkins is used a lot to automate your build process and make it a real continuous integration process. Run as Java -jar jenkins. Maven exec plugin lets you run the main method of a Java class in your project, with the project dependencies automatically included in the classpath. Finally, click Start using Jenkins. Although you can add VM as build slave in Jenkins, it's more flexible and convenient to make build slave as docker container, because you don't need to maintain each slave VM, you can just give Jenkins a slave host's IP and slave's docker image template, then Jenkins can create slave as docker container on that host. 08/13/2019; 9 minutes to read +4; In this article. If you want to put this. In future posts I intend to also elaborate on adding automated tests using Cucumber and or Selenium to the Jenkins build. I'm trying to build a CI/CD pipeline using Jenkins. Note that the “Jenkins initial setup” message in your shell window will generate a password for you. Below is an example post-build BeanShell script (verify. Step 1: Create Project. I am trying to run a simple pipeline example which uses docker. The trigger for this execution can be time or event based. After the build completion all the results files will be attached to it. Open your pom. Build failed in Jenkins: POI-JDK8 #1268. Once your Jenkins job has been created, give it a go. Go to command prompt -> browse to the directory containing jenkins. Both release lines are distributed as. After the process is stopped, we run the built JAR in the background. Jenkins helps to automate the non-human part of the software development process, with continuous integration and facilitating technical aspects of continuous delivery. Go to the Available tab. HI im trying to build a automation tool, which downloads jenkins-cli. Choose Manage Jenkins and then choose Manage Plugins from the list. Continuous integration (CI) is the practice, in software engineering, of merging all developer working copies with a shared mainline several times a day. In this blog post, we'll discover steps required for adding slave node in the Jenkins farm. You can integrate Jenkins with a number of testing and deployment technologies. then start the command that uses the jar file. Even though Jenkins was down, tomcat start script got. Jenkins - Get the Build number of a different Build Job Lets say you have two different Build-Jobs SomeProjectA and SomeProjectB. x86, ARM). Your Jenkins CI build is now ready to run. From the Jenkins UI, from any screen, if you look at the bottom right corner, you’ll see the current version of the Jenkins that you are running. Note that we used the Java default package, as this is how it is referenced from the build. Command-line – to start the node agent using the command line, the client needs the executable agent. After all current builds are finished, Jenkins will shut down cleanly. To re-iterate on our plan, we will be pulling from GitHub, packaging a JAR in the build process, and deploying that JAR during the post-build (deployment) process. I hope you have read the previous one here Part 1 – Setting up Android build on Jenkins Requirements for this tutorial is that you have a working Android Project which builds fine inside Android Studio. Watch this interesting video on Jenkins Installation on AWS ec2. Build your project with Gradle Wrapper The Gradle Wrapper is the preferred way of starting a Gradle build. Before switching to Jenkins I was using bash , python and nodejs scripts, started by cron on multiple servers, making sure there are no conflicts each time I was adding the new one. After installing Jenkins by running setup wizard, you can visit localhost:8080 to initialize the Jenkins environment. The PowerShell plugin is now installed. xml file in the current directory and, if found, uses that file as the build file and runs the target specified in the default attribute of the tag. The spring-jpa-1. Open your pom. Jenkins CI is the leading open-source continuous integration server. Gets the Jenkins singleton. [ERROR] After correcting the problems, you can resume the build with the command [ERROR] mvn -rf :scandium Build step 'Invoke top-level Maven targets' marked build as failure. Developer permission is required for reporting build status. Create folder "template" for Firefox profile template. In this example, we will show you how to create a cron job on *nix to run a jar file, by daily and hourly. Jenkins CI Flow Build Actions. However If I configure Jenkins installation as windows service, it looks like fails to lunch GUI tools on windows slave, if I run Jenkins like this: java –jar Jenkins. Using Jenkins Build Version With Maven Ted Vinke Java 20/04/2013 05/12/2013 3 Minutes Knowing which version of your application has been deployed on a certain environment is essential for today's software development and maintenance. However, it is possible to run agents with a different user. Sahi Pro needs real browsers to playback test scenarios. it is while i run below command in jenkins user as shown in installing and configuring ant tutorial Build jar file name not populating with Major version number. Forskolin Ketoboost And Garcinia Rapid Boost How To Stay On Track With Keto Diet Books Keto For Beginners Diet Plan Get Keto Diet Plan How To Kickstart Keto Diet Meals To Eat On Keto Diet The is actually an amazing machine. Shutdown- click prepare to shutdown link to prevent any new builds from being started. We will execute our build on Jenkins, run the. Performance Plugin for Jenkins uses Taurus Tool to execute load tests. Projects therefore have a choice, you can choose to utilise any or all of the services provided should that make sense. Click Build Now on the job page. Download now and install after a restart. Having a Jenkins instance running turns out to be quite useful for all sorts of tasks and so I've been trying to take advantage of it to automate more of my routine tasks. The Jenkins master connects to the slave using SSH and places the slave jar file on it, which then starts automatically. Having multiple slave/build executors running on the same machine can sometimes solve your build problem. In this exercise, you are going to clone a GitHub repo into Azure DevOps, if you have not already done so. The Wrapper is a script that invokes a declared version of Gradle, downloading it beforehand if necessary. This plugin allows you to manage an agent running on *nix machines over SSH. Statements after "nohup" skipped completely COMMAND="nohup java -jar jenkins. With Jenkins, you can also monitor executions, and examine the results. Use these plugins to get the most out of Jenkins. Jenkins Tutorials. Jenkins is a free and open source automation server written in Java. is your respective Jenkins server URL (development or staging). is it possible to stop my dev server from. Also checkout my post titled “Generate JUnit Style HTML Reports in soapUI” to know more about invoking soapUI from Ant Build tool. Project model. After installing and configuring the ARCAD-Builder for Jenkins plug-in, an option will appear in the Build Environment section of the job configuration that allows you to request builds at the end of the Build Environment stage. Questions: I have installed Jenkins on my local machine which runs on MacOS High Sierra and have docker installed. Also the container is not removed after exiting. C:\Program Files\Jenkins: Then open command prompt in this directory by clicking on the filepath and typing 'cmd': Once command prompt has opened, type and run the command java -jar Jenkins. jar file (that is, your deployment package), will be in the project-dir/target subdirectory. After that you need to configure your project. If you specify 00 22 1 * * it means your build will run every Monday @ 10 PM. Automated Servers and Deployments with Ansible & Jenkins In a previous post , Dave talked about marginal gains and how, in aggregate, they can really add up. java -jar jenkins. Prerequisites. The deployment is done by a parameterized build job, where the parameter is the version of the project that we want to deploy. One of Jenkins best features is the ability to trigger a build after the successful run of another job. If multiple projects are being executed or multiple cucumber commands are being called, then the directory structure created provides the ‘suite’ names for the test result report. Even though Jenkins was down, tomcat start script got. Now, it is possible to setup a. Note that binary file created in previous steps (bar-web in our case) must be used in all these steps. We're using a couple of Jenkins mechanisms for this: Running parallel. then start the command that uses the jar file. Noritake Avalon China Gravy Boat with Attached Under Plate Blue Banner,Rosemary and Garlic - 5 Minute Marinade - Glaze - 600g - Shaker Jar,Papier De Tatouage Temporaire 8. After the process is stopped, we run the built JAR in the background. It is a compiled version, so the process of compiling is not required for executable JAR files. Here it is. Jenkins pipelines let you invoke a build step as part of the build process and use the results for complex workflows. Automatically trigger deployments in Octopus from Jenkins whenever a build completes. With a robust ecosystem of plugins and broad support, Jenkins can handle a diverse set of workloads to build, test, and deploy applications. This launch method will Open an SSH connection to the specified host as the specified username. jar), how can I automatically run it inside Eclipse?. The Giants will be without starting running back Saquon Barkley, backup running back Wayne Gallman, No. The JAR works by SSH-ing to a special port exposed by the Jenkins server and runs commands against that SSH server. Out of the Box Solution - Using Jenkins Build Other Projects. Open your pom. jar, in your srv. One of Jenkins best features is the ability to trigger a build after the successful run of another job. The basic functionality of Jenkins is to execute a predefined list of steps, e. Now that you have specified all of the configurations, the Jenkins build job can be saved and run. Jenkins is one of the most prominent players in the field. [Geoserver-devel] Jenkins build is back to normal : GeoServer-Master #2862 [Geoserver-devel] Jenkins build is back to normal : GeoServer-Master #2862 From: - 2016-04-30 01:06:19. Although you can add VM as build slave in Jenkins, it's more flexible and convenient to make build slave as docker container, because you don't need to maintain each slave VM, you can just give Jenkins a slave host's IP and slave's docker image template, then Jenkins can create slave as docker container on that host. You can also find tags corresponding to stable releases that you can use as well. You'll now see the Jenkins homepage, as shown in Figure 2. ) The Studio Source Code After following the download instructions ( here ), y ou will have the Android plugin source code under tools/adt/idea, the IntelliJ IDE base in tools/idea/, and a lot of shared libraries in tools/base/. Jenkins homepage. On the build section, add Execute Sonarqube Scanner like below: And on the Post-build Action add Quality Gates like below: After that, save and try to run your Jenkins Job. This blog describes you how to run Jenkins Job to execute a batch command. Then, whenever code is pushed to that repository, GitHub will send a POST request to the Hook URL and Jenkins will run the build. Using Jenkins and Octopus Deploy together, you can: Use Jenkins to compile, test, and package your applications. x applications using Jenkins and Ansible by taking advantage of the Jenkins Job DSL and Ansible plugins. We will run Jenkins inside a Docker container, start Maven containers from the Jenkins container to build our code, run test cases in another Maven container, generate the artifact (jar in this. Running Command line require proper authentication to the Jenkins server to execute the given commands. to compile Java source code and build a JAR from the resulting classes. Simply put, you can think of a Jenkins build job as a particular task or step in your build process. However If I configure Jenkins installation as windows service, it looks like fails to lunch GUI tools on windows slave, if I run Jenkins like this: java –jar Jenkins. war -> After Jenkins is fully up & running -> Go to the default browser. TeamCity can now also automatically build GitLab merge requests. -- This message is automatically generated by JIRA. Both release lines are distributed as. Alternative: If you are using command line you can type mvn install command. jar is downloaded from the Jenkins server and used to manage the nodes via the groovy cli command. Hi all, My Jenkins master is windows and slave is also windows. To run the application, just write this in your console: java -jar target/webapp. If you are using the Maven plugin, you should also investigate the M2 Release Plugin for automating releases with one click. If you would like to run the pre-configured Jenkins image somewhere other than your local machine, we have an image you can pull and use on DockerHub. Requires the Jenkins Batch Task Plugin. This plugin allows you to manage an agent running on *nix machines over SSH. Maven exec plugin lets you run the main method of a Java class in your project, with the project dependencies automatically included in the classpath. Batch tasks and builds “lock” the workspace, so when one of those activities is in progress, all the others will block in the queue. After upgrading to Jenkins 1. Instructions. The basic functionality of Jenkins is to execute a predefined list of steps, e. war with below command jenkins -jar jenkins. Any long running jobs should be killed. It can be used as library reference to include the classes. Some scripts are SH/Bash that runs Rsync and some are PHP scripts. Allow Jenkins to start slaves on EC2 or Eucalyptus on demand, and kill them as they get unused. The build is queued until the agent node comes up and picks up the build. The basic functionality of Jenkins is to execute a predefined list of steps, e. The PowerShell plugin is now installed. Build with Maven on a Jenkins buildserver the application is compiled and packaged without any errors but does not run on Glassfish 3. Search and install these plugins from Manage Jenkins-> Manage Plugins. Here we are running the job normally. [ERROR] After correcting the problems, you can resume the build with the command [ERROR] mvn -rf :scandium Build step 'Invoke top-level Maven targets' marked build as failure. I just finished an effort setting up automated load tests against a GWT-RPC server interface. Parameters can be added in the Main tab. Setting up a Nightly Build Process with Jenkins, SVN and Nexus July 20, 2012 July 23, 2012 / rterp We wanted to set up a nightly integration build with our projects so that we could run unit and integration tests on the latest version of our applications and their underlying libraries. After the MSBuild step, you need to add a Execute Windows batch command step. See Changes: [tbarsballe. Firstly install Maven in Eclipse IDE and create a Maven Project. Option 4: Sauce Labs Jenkins Plugin how to setup the plugin and run Selenium Jenkins tests on over 250 browser/OS combinations in the Sauce cloud, with no need to install browsers and set up special infrastructure in house. Having multiple slave/build executors running on the same machine can sometimes solve your build problem. I have also checked the build logs to see if there was anything that indicated an issue and didn't see anything. war and return to the command prompt while the service is still running. You'll want to already have your template jobs running and passing (likely one or more jobs on the master branch of your repo). Setup Build Slave as docker container. In this directory place remote_agent-1. This plugin allows you to download the internets and take advantage of Maven's features. My local build does not load aether-util-0. x featuring Continuous Delivery with Jenkins and Ansible. The plugin takes war/jar/ear file from build and deploys to running instance of the application server. Using Docker to manage build dependencies on Jenkins. When this file is run, it launches a process on the client to communicate with the Jenkins master to run build jobs. io and even Selenium. At Mashion our usual pairing setup means we have one laptop that’s not doing much work. [Build 14507 and later of the Structure101 SonarQube plugin] Structure101 Build performs architectural checks and can publish a snapshot … Read More. JUnit Description. We need to give this URL to the repository on GitHub. /ant-lib/jsch-0. Nexus Repository Manager 3. In this article I will explain how to build an IIB (IBM Integration Bus v9 & v10) project and deploy the bar file to target Integration Server using Maven and Jenkins. 2 wide receiver Sterling Shepard and starting tight end Evan Engram due to injuries. The test works. The PowerShell plugin is now installed. Run Jenkins build from command is very simple in Linux system. war There's myriad of plugins available for all the popular build tools and. I want to focus on one problem. How does Jenkins authenticate users? There are 3 ways -. use -v on the docker run, to map a local folder to a container folder for example (make the source folder read only too)-v. The Grinder is a Java TM load testing framework that makes it easy to run a distributed test using many load injector machines. Download Jenkins from the link (only download the. We discussed maven in detail earlier here and hope you have configured maven. Using the Add build step dropdown, select Nexus Repository Manager Publisher to add a step to publish your artifacts. Setting up Jenkins for your PHP Project. It is a compiled version, so the process of compiling is not required for executable JAR files. war Run one command – java –jar jenkins. Always advised to run performance tests in the early software development stages. When this file is run, it launches a process on the client to communicate with the Jenkins master to run build jobs. The main screen for Jenkins shows the current built queue and executor status. and download jenkins-cli. It can be used as library reference to include the classes. In order to approve a pull request we require at least one successful Jenkins build. Here's an example of how to configure Jenkins to generate and publish the artifacts (you can click the image to see it completely). When I make any changes, Jenkins fires off a build using deploy as the target, so the built JAR goes into Nexus. Jenkins will keep a check on that and it will run the smoke test against the latest build. Get the Jenkins CLI client package. Ideally, we recommend that the same user account jenkins is created on each Server that will be connected to your Jenkins Master. Heads Up: Challenges You Might Face When Running Selenium Tests with Jenkins. For those rare cases use this method. This plugin allows you to download the internets and take advantage of Maven's features. Now that we have a working buildfile, we could do some enhancements: many times you are referencing the same directories, main-class and jar-name are hardcoded, and while invoking you have to remember the right order of build steps. Click Build Now on the job page. Steps to Install Jenkins. Now that you have specified all of the configurations, the Jenkins build job can be saved and run. Running a background process in Pipeline job. At times you might be required to add a field in your build with the help of which your end user or client could easily upload a file. In order to approve a pull request we require at least one successful Jenkins build. What would be the easiest way to achieve that?. number=${BUILD_NUMBER}). java -jar jenkins-cli. Jenkins is the leading open-source continuous integration tool developed by Hudson lab. Hi, To build my maven project i do the following under the roor folder : mvn clean package cd Main mvn rpm:rpm This builds an rpm file which is what i need On Jenkins i saw that i can only. 3:test (default. To automatically run builds, Jenkins listens for POST requests at a Hook URL. Maven coordinates have three components:. After Jenkins is fully up & running. after the build process can any one tell me how to do this. Why should we prefer executable Java Archive (JAR) file? Some of the benefits of using Java Archive (JAR) file are given below. go to the location where you downloaded the jenkins-cli. The JAR file can be uploaded to the any operating system platform to be run from many locations using JAR file. Let’s do that now. war file to an appropriate directory, e. Connect the TFS and pull the project into a local folder which is located in CI server. Search and install these plugins from Manage Jenkins-> Manage Plugins. To list all jenkins commands. Here is an example of the Jenkins build output: Here is an example of the Databricks workspace after job is updated (note the newly-built V376 JAR at the end of the listing): Updating Databricks Jobs and Cluster Settings with Jenkins. Open your pom. Manage nodes- configure the number of builds you want. In all cases, Jenkins will pull down the latest code from the Git repository into a local workspace and build it. 0 #2329; Build failed in Jenkins: myfaces-current-2. Figuring how to run end-to-end tests in Jenkins X was the hardest thing for me to figure out. Jenkins reads your project's dependencies from your POM and, if those are also built on Jenkins, sets up triggers in such a way that a new build in one of those dependencies will automatically start a new build in this project. JUnit 5 is the next generation of JUnit. If you selected the “JUnit-compatible report” option in the previous step, now you can publish a JUnit test result report to the Jenkins build after the automated tests complete. Instructions. war and return to the command prompt while the service is still running. Later, can be used as a metric and process control. Stay in your Docker terminal window. You can run any of these load injectors from Jenkins build step with minimal prerequisites. Create a project directory (project-dir). It is a compiled version, so the process of compiling is not required for executable JAR files. Try LeanFT for yourself to experience this integration capability. Automatically triggering a Jenkins build on Git commit (this post) Running NUnit tests with Jenkins. Answer UrbanCode Deploy offers a plug-in for Jenkins CI which enables you to publish the build result to UrbanCode Deploy and trigger an application process. This interface is accessed via the Jenkins CLI client, which is a Java JAR file distributed with Jenkins. Our Jenkins installation and configuration with Maven, Ant and GitHub works. Continuous deployment with Maven, Jenkins and WAS. In the course of this section, you'll learn how to set up Jenkins, configure a job to pull the source code from GitHub and run the Gradle build. Or we might want a build job to do other related tasks, such as running our. You'll want to already have your template jobs running and passing (likely one or more jobs on the master branch of your repo). The main screen for Jenkins shows the current built queue and executor status. Jenkins has a built-in command line interface that allows you to access Jenkins from a script or from your shell. C:\Program Files\Jenkins: Then open command prompt in this directory by clicking on the filepath and typing ‘cmd’: Once command prompt has opened, type and run the command java –jar Jenkins. 3) Once Click on Build automatically Command will be displayed on the top of screen to execute Jenkins job for e. Here we are running the job normally. x86, ARM). Additional args may be added, such as '-p 8080:8080 --memory-swap=-1'. Build with Maven on a Jenkins buildserver the application is compiled and packaged without any errors but does not run on Glassfish 3. But you can even take it a step further and automate the configuration of Jenkins itself. Learn how to upload a file in Jenkins using file parameter. You can do nearly everything you want with Jenkins since you can have it run arbitrary scripts / executables. The Jenkins master connects to the slave using SSH and places the slave jar file on it, which then starts automatically. Open your pom. jar, but i didn't overwrite my spigot. This way, we have a fingerprint of this build during deployment. Jenkins is an open source continuous integration (CI) tool written in Java. Jenkins is a Java-based CI server package. It provides a framework that enables easy reuse of common build logic for all projects following Maven's standards. Keep in mind that your script may be a bit different if you’re running locally on Linux or Windows. Some scripts are SH/Bash that runs Rsync and some are PHP scripts. The fact-checkers, whose work is more and more important for those who prefer facts over lies, police the line between fact and falsehood on a day-to-day basis, and do a great job. Today, my small contribution is to pass along a very good overview that reflects on one of Trump’s favorite overarching falsehoods. Namely: Trump describes an America in which everything was going down the tubes under  Obama, which is why we needed Trump to make America great again. And he claims that this project has come to fruition, with America setting records for prosperity under his leadership and guidance. “Obama bad; Trump good” is pretty much his analysis in all areas and measurement of U.S. activity, especially economically. Even if this were true, it would reflect poorly on Trump’s character, but it has the added problem of being false, a big lie made up of many small ones. Personally, I don’t assume that all economic measurements directly reflect the leadership of whoever occupies the Oval Office, nor am I smart enough to figure out what causes what in the economy. But the idea that presidents get the credit or the blame for the economy during their tenure is a political fact of life. Trump, in his adorable, immodest mendacity, not only claims credit for everything good that happens in the economy, but tells people, literally and specifically, that they have to vote for him even if they hate him, because without his guidance, their 401(k) accounts “will go down the tubes.” That would be offensive even if it were true, but it is utterly false. The stock market has been on a 10-year run of steady gains that began in 2009, the year Barack Obama was inaugurated. But why would anyone care about that? It’s only an unarguable, stubborn fact. Still, speaking of facts, there are so many measurements and indicators of how the economy is doing, that those not committed to an honest investigation can find evidence for whatever they want to believe. Trump and his most committed followers want to believe that everything was terrible under Barack Obama and great under Trump. That’s baloney. Anyone who believes that believes something false. And a series of charts and graphs published Monday in the Washington Post and explained by Economics Correspondent Heather Long provides the data that tells the tale. The details are complicated. Click through to the link above and you’ll learn much. But the overview is pretty simply this: The U.S. economy had a major meltdown in the last year of the George W. Bush presidency. Again, I’m not smart enough to know how much of this was Bush’s “fault.” But he had been in office for six years when the trouble started. So, if it’s ever reasonable to hold a president accountable for the performance of the economy, the timeline is bad for Bush. GDP growth went negative. Job growth fell sharply and then went negative. Median household income shrank. The Dow Jones Industrial Average dropped by more than 5,000 points! U.S. manufacturing output plunged, as did average home values, as did average hourly wages, as did measures of consumer confidence and most other indicators of economic health. (Backup for that is contained in the Post piece I linked to above.) Barack Obama inherited that mess of falling numbers, which continued during his first year in office, 2009, as he put in place policies designed to turn it around. By 2010, Obama’s second year, pretty much all of the negative numbers had turned positive. By the time Obama was up for reelection in 2012, all of them were headed in the right direction, which is certainly among the reasons voters gave him a second term by a solid (not landslide) margin. Basically, all of those good numbers continued throughout the second Obama term. The U.S. GDP, probably the single best measure of how the economy is doing, grew by 2.9 percent in 2015, which was Obama’s seventh year in office and was the best GDP growth number since before the crash of the late Bush years. GDP growth slowed to 1.6 percent in 2016, which may have been among the indicators that supported Trump’s campaign-year argument that everything was going to hell and only he could fix it. During the first year of Trump, GDP growth grew to 2.4 percent, which is decent but not great and anyway, a reasonable person would acknowledge that — to the degree that economic performance is to the credit or blame of the president — the performance in the first year of a new president is a mixture of the old and new policies. In Trump’s second year, 2018, the GDP grew 2.9 percent, equaling Obama’s best year, and so far in 2019, the growth rate has fallen to 2.1 percent, a mediocre number and a decline for which Trump presumably accepts no responsibility and blames either Nancy Pelosi, Ilhan Omar or, if he can swing it, Barack Obama. I suppose it’s natural for a president to want to take credit for everything good that happens on his (or someday her) watch, but not the blame for anything bad. Trump is more blatant about this than most. If we judge by his bad but remarkably steady approval ratings (today, according to the average maintained by 538.com, it’s 41.9 approval/ 53.7 disapproval) the pretty-good economy is not winning him new supporters, nor is his constant exaggeration of his accomplishments costing him many old ones). I already offered it above, but the full Washington Post workup of these numbers, and commentary/explanation by economics correspondent Heather Long, are here. On a related matter, if you care about what used to be called fiscal conservatism, which is the belief that federal debt and deficit matter, here’s a New York Times analysis, based on Congressional Budget Office data, suggesting that the annual budget deficit (that’s the amount the government borrows every year reflecting that amount by which federal spending exceeds revenues) which fell steadily during the Obama years, from a peak of $1.4 trillion at the beginning of the Obama administration, to $585 billion in 2016 (Obama’s last year in office), will be back up to $960 billion this fiscal year, and back over $1 trillion in 2020. (Here’s the New York Times piece detailing those numbers.) Trump is currently floating various tax cuts for the rich and the poor that will presumably worsen those projections, if passed. As the Times piece reported: