Migrate content of RStudio Connect to a Production server

Hi All,
Looking for an option where content(not all) can be moved to a production server.
For exmaple:
I have 2 servers a and b
I want to move one particular application x1 from a to b.
server a does have multiple contents apart from x1, but I want only x1 to be migrated.
server b does have multiple contents and I dont want to impact those.

is there a way to achieve this, other than asking the developer to publish the tested code again in production?

2 Likes

The path for migrating content from one Connect server to another is sub-optimal today. We have a few things on our roadmap that should improve that workflow.

That said, it is possible to do so. On Connect, the manifest file, packrat.lock file, and dependencies (code, data, etc.) are all stored in a bundle. Further, the Connect UI gives an option for collaborators to download the source bundle.

The bundle contains everything necessary to migrate the content to another Connect server. The steps for doing so are outlined below:

  1. Download the source bundle for app x1 from Connect server a
  2. Untar the source bundle and enter the directory
  3. Run packrat::restore() to rebuild the publishing environment locally
  4. Publish the application to Connect server b (either using push-button deployment or the rsconnect package directly)

Obviously the same pattern could be followed from the original environment where development took place. However, this process ensures that the version deployed to server B is the same that was deployed to server A.

Many of the pain points in steps 3 and 4 are on our roadmap for improvement. The packrat::restore() step, especially, can be time consuming and annoying for a non-R-user or admin to do, since it involves installing all of the different package versions that will be used on Connect. There are directions for doing this type of thing on a CI server: http://docs.rstudio.com/connect/admin/appendix-ci.html . While not directly relevant, some of the configuration may be helpful.

4 Likes

@cole

Thanks Cole!! I tried this approach on a couple of apps and they worked fine :smile:

Regards,
Ankur

1 Like

If your question's been answered (even if by you), would you mind choosing a solution? (See FAQ below for how).

Having questions checked as resolved makes it a bit easier to navigate the site visually and see which threads still need help.

Thanks

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.