*backgroud info: My team is currently only using Armada among many airship projects, and trying to leverage Deckhand as well. Hi all, I have questions regarding Deckhand usage. My team has a lot of armada manifests for many sites as following and we want to use Deckhand’s layering feature to manage the manifests efficiently. - global.yaml - site1.yaml - site2.yaml … I’ve looked at the Deckhand documentation and it’s not clear how to use that functionality. Q1. Deckhand standalone usage In the installation document (https://airshipit.readthedocs.io/projects/deckhand/en/latest/users/getting-s...), I saw a “development mode”, which doesn’t require Keystone authentication. However, when I looked at the Operator guide (https://airshipit.readthedocs.io/projects/deckhand/en/latest/operators/api_c...), I couldn’t see how I can use Deckhand client without Keystone auth. Is it even possible? Q2. Layering As I mentioned above, my team have a lot of armada manifest files for various sites. How can I upload multiple manifests (Eg, global & site1) to the bucket and perform layering on those documents? Should I merge multiple files into one large string and upload it to the bucket? If it’s true, does the bucket update automatically trigger rendering process or should I explicitly call some rendering function?? Can anyone give an example code? Any help would be appreciated. Regards, Robert Choi
Hi Robert! The Deckhand client does not have the ability to bypass Keystone authentication; it was designed as a component of the full Airship integration. Are you attempting to use Deckhand without Keystone authentication merely for demonstration purposes? When submitting documents to Deckhand buckets, documents must be presented as a multi-document YAML body <https://airship-deckhand.readthedocs.io/en/latest/operators/api_ref.html#put-buckets-bucket-name-documents>. This is because each addition of new documents to a bucket creates a new "revision". When documents from previous revisions are excluded from the most recently-submitted revision, they are only accessible from previous revisions. The common approach to achieve a single file containing all of your documents is to store them in a repository like airship-treasuremap <https://github.com/openstack/airship-treasuremap> with corresponding global/ site/ and type/ directories. Using Pegleg's collect command <https://airship-pegleg.readthedocs.io/en/latest/cli/cli.html#collect>, you can combine all of the documents into a single, flat file and submit to Deckhand for rendering; however, the aforementioned approach requires certain documents to be present (e.g. a site definition) that would not be useful for operating with Armada and Deckhand alone. Lastly, documents are rendered (i.e. layered with substitution) when they are retrieved from the /revisions/{revision_id}/rendered-documents <https://airshipit.readthedocs.io/projects/deckhand/en/latest/operators/api_ref.html#get-revisions-revision-id-rendered-documents> endpoint. Hopefully the above information is enough to get you started. Feel free to reply or join #airshipit on Freenode IRC with any additional questions! Regards, Drew Walters On Sun, Jan 6, 2019 at 11:12 PM 최태일님 <taeil.choi@sk.com> wrote:
*backgroud info: My team is currently only using Armada among many airship projects, and trying to leverage Deckhand as well.
Hi all,
I have questions regarding Deckhand usage.
My team has a lot of armada manifests for many sites as following and we want to use Deckhand’s layering feature to manage the manifests efficiently.
- global.yaml
- site1.yaml
- site2.yaml
…
I’ve looked at the Deckhand documentation and it’s not clear how to use that functionality.
Q1. Deckhand standalone usage
In the installation document ( https://airshipit.readthedocs.io/projects/deckhand/en/latest/users/getting-s... ),
I saw a “development mode”, which doesn’t require Keystone authentication. However, when I looked at the Operator guide ( https://airshipit.readthedocs.io/projects/deckhand/en/latest/operators/api_c...), I couldn’t see how I can use Deckhand client without Keystone auth. Is it even possible?
Q2. Layering
As I mentioned above, my team have a lot of armada manifest files for various sites. How can I upload multiple manifests (Eg, global & site1) to the bucket and perform layering on those documents?
Should I merge multiple files into one large string and upload it to the bucket? If it’s true, does the bucket update automatically trigger rendering process or should I explicitly call some rendering function??
Can anyone give an example code?
Any help would be appreciated.
Regards,
Robert Choi _______________________________________________ Airship-discuss mailing list Airship-discuss@lists.airshipit.org http://lists.airshipit.org/cgi-bin/mailman/listinfo/airship-discuss
Hi Drew, Thank you so much for your quick and detailed answer. Honestly, the Deckhand usage is much more complicated than I expected. Considering the overhead, it doesn’t really fit to our use case, so I think it’s better to try simpler approach first. If it doesn’t work, then I’ll try the Deckhand again. Thanks again! Regards, Robert From: Drew Walters <drewwalters96@gmail.com> Sent: Tuesday, January 08, 2019 5:29 AM To: 최태일님/Virtualization SW개발팀 <taeil.choi@sk.com> Cc: airship-discuss@lists.airshipit.org Subject: Re: [Airship-discuss] Deckhand Usage Hi Robert! The Deckhand client does not have the ability to bypass Keystone authentication; it was designed as a component of the full Airship integration. Are you attempting to use Deckhand without Keystone authentication merely for demonstration purposes? When submitting documents to Deckhand buckets, documents must be presented as a multi-document YAML body<https://airship-deckhand.readthedocs.io/en/latest/operators/api_ref.html#put-buckets-bucket-name-documents>. This is because each addition of new documents to a bucket creates a new "revision". When documents from previous revisions are excluded from the most recently-submitted revision, they are only accessible from previous revisions. The common approach to achieve a single file containing all of your documents is to store them in a repository like airship-treasuremap<https://github.com/openstack/airship-treasuremap> with corresponding global/ site/ and type/ directories. Using Pegleg's collect command<https://airship-pegleg.readthedocs.io/en/latest/cli/cli.html#collect>, you can combine all of the documents into a single, flat file and submit to Deckhand for rendering; however, the aforementioned approach requires certain documents to be present (e.g. a site definition) that would not be useful for operating with Armada and Deckhand alone. Lastly, documents are rendered (i.e. layered with substitution) when they are retrieved from the /revisions/{revision_id}/rendered-documents<https://airshipit.readthedocs.io/projects/deckhand/en/latest/operators/api_ref.html#get-revisions-revision-id-rendered-documents> endpoint. Hopefully the above information is enough to get you started. Feel free to reply or join #airshipit on Freenode IRC with any additional questions! Regards, Drew Walters On Sun, Jan 6, 2019 at 11:12 PM 최태일님 <taeil.choi@sk.com<mailto:taeil.choi@sk.com>> wrote: *backgroud info: My team is currently only using Armada among many airship projects, and trying to leverage Deckhand as well. Hi all, I have questions regarding Deckhand usage. My team has a lot of armada manifests for many sites as following and we want to use Deckhand’s layering feature to manage the manifests efficiently. - global.yaml - site1.yaml - site2.yaml … I’ve looked at the Deckhand documentation and it’s not clear how to use that functionality. Q1. Deckhand standalone usage In the installation document (https://airshipit.readthedocs.io/projects/deckhand/en/latest/users/getting-s...), I saw a “development mode”, which doesn’t require Keystone authentication. However, when I looked at the Operator guide (https://airshipit.readthedocs.io/projects/deckhand/en/latest/operators/api_c...), I couldn’t see how I can use Deckhand client without Keystone auth. Is it even possible? Q2. Layering As I mentioned above, my team have a lot of armada manifest files for various sites. How can I upload multiple manifests (Eg, global & site1) to the bucket and perform layering on those documents? Should I merge multiple files into one large string and upload it to the bucket? If it’s true, does the bucket update automatically trigger rendering process or should I explicitly call some rendering function?? Can anyone give an example code? Any help would be appreciated. Regards, Robert Choi _______________________________________________ Airship-discuss mailing list Airship-discuss@lists.airshipit.org<mailto:Airship-discuss@lists.airshipit.org> http://lists.airshipit.org/cgi-bin/mailman/listinfo/airship-discuss
participants (2)
-
Drew Walters
-
최태일님