Hi,
> On 25. Feb 2019, at 08:47, Dirk Heinrichs <[email protected]> wrote:
>
> Hi,
>
> I need to write a custom type to configure a third party tool through REST
> API calls. This means I have to:
>
> • Get the configuration via REST call and provide it as hash
> • Modify the requested attributes
> • Upload the modified configuration and request the the tool to restart
> itself (both via REST API).
>
I assume that there are some types/provider who exactly do this. I just have no
example at hand.
> This doesn't sound like a classical ensurable type to me. However, I've got
> some difficulties to understand how to write a type that isn't ensurable and
> how such a type would interact with its provider (in case I need one at all),
> so that it's still idempotent. The resource call should then look like this:
The type describes the resource parameters and its data validation.
Additionally one can add autorequires to other resource types.
Whether a type is ensurable or not has no impact on the provider. Within a type
it is just the ensurable declaration.
When a type is ensurable you wi have destroy and create methods in the provider.
Within the provider you specify getters (how to read existing data) and setters
(how to set new data).
Maybe you want to have a look at my PuppetConf talk "Moving from exec to types
and providers". You can find it at Puppet youtube channel.
There I describe getters and setters.
hth,
Martin
>
> myconfig { 'somename':
> option1 => 'value1',
> option2 => 'value2',
> ...,
> require => [Something],
> }
>
> Could someone please point me into the right direction?
>
> Thanks a lot...
>
> Dirk
> --
> Dirk Heinrichs
> Senior Systems Engineer, Delivery Pipeline
> OpenText ™ Discovery | Recommind
> Phone: +49 2226 15966 18
> Email: [email protected]
> Website: www.recommind.de
> Recommind GmbH, Von-Liebig-Straße 1, 53359 Rheinbach
> Vertretungsberechtigte Geschäftsführer John Marshall Doolittle, Gordon
> Davies, Christian Waida, Registergericht Amtsgericht Bonn, Registernummer HRB
> 10646
> This e-mail may contain confidential and/or privileged information. If you
> are not the intended recipient (or have received this e-mail in error) please
> notify the sender immediately and destroy this e-mail. Any unauthorized
> copying, disclosure or distribution of the material in this e-mail is
> strictly forbidden
> Diese E-Mail enthält vertrauliche und/oder rechtlich geschützte
> Informationen. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail
> irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und
> vernichten Sie diese Mail. Das unerlaubte Kopieren sowie die unbefugte
> Weitergabe dieser Mail sind nicht gestattet.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/puppet-users/192ca5b4da8bda73365493c34a48dc85d2c7a2d9.camel%40opentext.com.
> For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-users/0D6D2A4D-9C1D-4734-A2A2-2C94D1452819%40gmail.com.
For more options, visit https://groups.google.com/d/optout.