question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Add possibility to upload "transactional"

See original GitHub issue

Hi,

I would like a feature where all binary packages and the receipt are make available on the server only if all uploads have succeeded and are finished. If one upload fails, nothing should be available on the server. Maybe a feature line --all --as_transaction.

We are currently building a lot of different configurations of one package on our CI System. When all builds are finished (currently 4, Release/Debug and x64/x86, this will get more when more compilers need to be supported), I upload them to our conan server using the --all flag.

The problem is that the receipt is publish first, and then the binary packages are uploaded. This currently takes up to 2 minutes, and sometimes an upload fails. Then, other CI builds are using the newly uploaded component and building them “on the fly”, because the binary package is not available on the server. This is not desired, as some of the base components take some time to build.

Best, Claas

Issue Analytics

  • State:open
  • Created 7 years ago
  • Reactions:2
  • Comments:22 (14 by maintainers)

github_iconTop GitHub Comments

2reactions
rbierbaszcommented, Feb 2, 2017

I think that quick, atomic move operation for remote server can solve the problem. One can upload packages from CI builders to ci channel and then “promote” them to stable:

conan move MyPackage/0.1/demo/ci demo/stable -r conan_server

The move operation can be useful also for local cache.

Regards, Romek

1reaction
claasdcommented, Feb 26, 2019

Hi,

  1. Do you know whether access to the jfrog move and filespec commands are supported with Artifactory non-Administrator privileges?

Yes, they are. You need create and maybe overwrite permissions on one repo and delete permissions on the other.

  1. Do you know of any examples of how to use the jfrog move commands from Jenkins Groovy? My attempts to Google for it only seem to show examples of uploading or downloading You cannot use the Jenkins-Artifactory plugin for this. You have two options: use the JFROG-CLI , or use the Artifactory API directly, for example with the [Jenkins HTTP-Request Plugin] (https://github.com/jenkinsci/http-request-plugin)

We use both, here is an example script for using JFrog CLI to login using Jenkins credentials and move a conan package.

withCredentials([credentialsId: 'artifactory-cred', passwordVariable: 'cred_pass', usernameVariable: 'cred_user')]) {
            sh("jfrog rt config --interactive=false --url=${artifactoryUrl} " +
                    "--user=\"${cred_user}\" --password=\"${cred_pass}\" --enc-password=true")
}
sh("jfrog rt move ${srcRepo}/${user}/${packageName}/${version}/${channel} ${targetRepo}")
Read more comments on GitHub >

github_iconTop Results From Across the Web

uploading transactional data - SAP Community
Transaction data as on date is to be migrated to SAP system.
Read more >
how do I ensure HTTP file upload (ie multipart etc) is ...
The pattern you describe of uploading the file to a temporary location or using a temporary name and then moving or renaming it...
Read more >
Bulk Upload or Transactional approach for adding queue ...
Hello, I would like to know the better method to add queue items in Orchestrator either bulk upload or using add queue item...
Read more >
How to upload transactions manually to QuickBooks Online
However, that's not possible for some banks. Or, you may want to add some older transactions to QuickBooks. In those cases you'll need...
Read more >
Is it possible to import Transactions from an Excel or CSV file?
Valutico does NOT currently support bulk upload of transactions, but we are currently testing this feature. As a current alternative, you can add...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found