# Recommended update strategy

**URL:** <https://forum.ansible.com/t/recommended-update-strategy/26485>\
**Category:** AWX Project\
**Tags:** awx\
**Created:** [January 15, 2018, 10:54pm UTC](https://forum.ansible.com/t/recommended-update-strategy/26485 "2018-01-15T22:54:29Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![jjeffers](https://avatars.discourse-cdn.com/v4/letter/j/9f8e36/32.png) [@jjeffers](https://forum.ansible.com/u/jjeffers)\
**Post date:** [January 15, 2018, 10:54pm UTC](https://forum.ansible.com/t/recommended-update-strategy/26485/1 "2018-01-15T22:54:29Z")

</div>

I’m wondering if the AWX team has a suggestion on when/how often to grab the latest release? I had to rebuild after the 1.0.2 backwards-incompatible release, so it’s made me more cautious about just grabbing the latest release regularly. I’m currently on 1.0.2.327 and it’s working well. Thoughts?

---

<div class="post-metadata">

**Author:** ![Robin\_Miller](https://avatars.discourse-cdn.com/v4/letter/r/8edcca/32.png) [@Robin\_Miller](https://forum.ansible.com/u/Robin_Miller)\
**Post date:** [January 16, 2018, 5:48pm UTC](https://forum.ansible.com/t/recommended-update-strategy/26485/2 "2018-01-16T17:48:29Z")

</div>

I’m also interested in this. I understand that AWX is offered ‘as-is’ and that for anything mission-critical you should pony up to RedHat for a Tower license, but (often?) requiring starting over with an empty database for new releases also makes using the tool at all a bit difficult for anything beyond some very casual poking around.  
Seeing as Tower has to of course handle database upgrades between releases, it feels like a deliberate crippling of the open source product to drive people toward the commercial solution. I would have hoped that having RedHat support for the commercial solution would have been incentive enough.

-R

---

<div class="post-metadata">

**Author:** ![Wayne\_Witzel](https://avatars.discourse-cdn.com/v4/letter/w/c57346/32.png) [@Wayne\_Witzel](https://forum.ansible.com/u/Wayne_Witzel)\
**Post date:** [January 17, 2018, 3:11pm UTC](https://forum.ansible.com/t/recommended-update-strategy/26485/3 "2018-01-17T15:11:51Z")

</div>

This is really just an unfortunate circumstance that results from our development workflow and how we use the devel branch. Even for us internally, there is never a guarantee that any commit of devel will upgrade to any other commit of devel. We frequently have to wipe and recreate our databases during the development cycle. You will never be able to run off the HEAD of devel and have reliable upgrades.

That said, the the “best” way to have reliable upgrades when using awx would be to look for merge commits that are from tower/release branches, like this one [https://github.com/ansible/awx/commit/9dbcc5934ee1a5774cec58b8f4ce08bea777dd7e](https://github.com/ansible/awx/commit/9dbcc5934ee1a5774cec58b8f4ce08bea777dd7e) and only update awx to those commits.

---

<div class="post-metadata">

**Author:** ![Greg\_DeKoenigsberg](https://avatars.discourse-cdn.com/v4/letter/g/c68b51/32.png) [@Greg\_DeKoenigsberg](https://forum.ansible.com/u/Greg_DeKoenigsberg)\
**Post date:** [January 17, 2018, 3:44pm UTC](https://forum.ansible.com/t/recommended-update-strategy/26485/4 "2018-01-17T15:44:52Z")

</div>

Another reminder: the primary purpose of Tower is stability, and the  
primary purpose of AWX is to move fast, even at the risk of  
occasionally breaking things.

Tower upgrades are different because we have much stronger assurances  
about customer environments, and because we're on the hook to fix  
those issues if they go wrong. We \*cannot possibly\* provide such  
assurances for AWX -- and providing an upgrade path without such  
assurances would be irresponsible. We refuse to make promises about  
upgradability that we won't be able to keep.

One possible workaround for AWX users is to export data from the old  
AWX instance using the Tower API/CLI, and then import that data to the  
new AWX instance.

---

<div class="post-metadata">

**Author:** ![Robin\_Miller](https://avatars.discourse-cdn.com/v4/letter/r/8edcca/32.png) [@Robin\_Miller](https://forum.ansible.com/u/Robin_Miller)\
**Post date:** [January 17, 2018, 10:28pm UTC](https://forum.ansible.com/t/recommended-update-strategy/26485/5 "2018-01-17T22:28:31Z")

</div>

Thanks - that’s a neat idea. I’ll give that a shot.

---

<div class="post-metadata">

**Author:** ![Alex2](https://avatars.discourse-cdn.com/v4/letter/a/45deac/32.png) [@Alex2](https://forum.ansible.com/u/Alex2)\
**Post date:** [February 7, 2018, 10:38am UTC](https://forum.ansible.com/t/recommended-update-strategy/26485/6 "2018-02-07T10:38:46Z")

</div>

Hi Greg,

could you please provide link about tower-cli export/import? I looked in tower-cli documentation and could not find anything.

Cheers,

---

<div class="post-metadata">

**Author:** ![Dong\_Yang](https://avatars.discourse-cdn.com/v4/letter/d/59ef9b/32.png) [@Dong\_Yang](https://forum.ansible.com/u/Dong_Yang)\
**Post date:** [March 9, 2018, 12:52am UTC](https://forum.ansible.com/t/recommended-update-strategy/26485/7 "2018-03-09T00:52:35Z")

</div>

I would be interested to find about exporting data out using tower api prior to upgrading to later tag . Thx

---

<div class="post-metadata">

**Author:** ![AlanCoding](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/alancoding/32/301_2.png) [@AlanCoding](https://forum.ansible.com/u/AlanCoding)\
**Post date:** [March 9, 2018, 12:20pm UTC](https://forum.ansible.com/t/recommended-update-strategy/26485/8 "2018-03-09T12:20:29Z")

</div>

The tower-cli importer/exporter feature (goes through the API) is up as a pull request. Here is a message I sent about it

[https://groups.google.com/forum/#!msg/awx-project/Pil79lMgUUc/-ruILFbdAgAJ;context-place=forum/awx-project](https://groups.google.com/forum/#!msg/awx-project/Pil79lMgUUc/-ruILFbdAgAJ;context-place=forum/awx-project)

---

<div class="post-metadata">

**Author:** ![jjeffers](https://avatars.discourse-cdn.com/v4/letter/j/9f8e36/32.png) [@jjeffers](https://forum.ansible.com/u/jjeffers)\
**Post date:** [March 13, 2018, 11:35pm UTC](https://forum.ansible.com/t/recommended-update-strategy/26485/9 "2018-03-13T23:35:18Z")

</div>

I was able to import credentials, but beyond that, no luck. Trying to import items that refer to credentials fails because the API wants the Primary Key of the credential, not the name.

For example, I get this error when trying to import a Project:

Failed to create project ansible-playbooks MASTER : The Tower server claims it was sent a bad request.

POST [http://10.x.x.x/api/v2/projects/](http://10.x.x.x/api/v2/projects/)  
Params: None

Response: {**“credential”:[“Incorrect type. Expected pk value, received unicode.”]**}

The API wants the PK of the credential, not the text name. So the import feature would need some way to look up by name, retrieve the PK, and insert that PK value into the json prior to making the API POST.

---

<div class="post-metadata">

**Author:** ![jjeffers](https://avatars.discourse-cdn.com/v4/letter/j/9f8e36/32.png) [@jjeffers](https://forum.ansible.com/u/jjeffers)\
**Post date:** [March 17, 2018, 3:59am UTC](https://forum.ansible.com/t/recommended-update-strategy/26485/10 "2018-03-17T03:59:34Z")

</div>

Just wanted to post in here that there’s been a lot of progress on the Tower CLI client PR that Alan Rominger mentioned earlier in the thread.

[https://github.com/ansible/tower-cli/pull/479](https://github.com/ansible/tower-cli/pull/479)

I’ve done a couple of test migrations, and with the exception of permissions and system settings, it’s been successful. Pretty cool stuff if you’re looking for an upgrade path.
