Expand my Community achievements bar.

SOLVED

How to add library after creating new environment

Avatar

Level 2

We have 6 staging environment (01-06) and published libraries several times.
And this time we created new environment - staging 07.

As we didn't know proper way to add library to newly created environment,
1st we created new library and clicked "add all chenged resources" button.
Deploy Adobe Analytics to a dev environment | Adobe Analytics

But nothing happened because all changed resources were published via different staging environment.

So 2ndly we add some vital resources (some rules and some data elements and all extensions) to newly created library and bulit to develoment.  But no logs fired.
Lastly we removed all resources from the library (like attached image) and it did work!

My question is what is the proper way to add library to a newly created environment.
And is there any reference we can make regarding this?
we don't know the last one is the proper way or because it takes some time to take effects after buildling so it worked just after the last one by coincidence.
Thanks

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

You're most likely getting the 404 error with your Launch snippet because of 1 of 2 reasons:

  • There is no library being used in that particular Development environment.
  • You have not built that particular Development environment.

To double-check: open your Publishing Flow page in Launch. Under the Development column, you should see your library. Within that library, verify the following:

  • The environment that is set in there is your particular Development environment. If the environment is not set or it's set to another environment, then change it to your particular Development environment.
  • The coloured dot next to your library's name is green. If it's not green, then you need to build your library.

Also, why do you create so many Development environments? Normally, one is sufficient. At some organisations, there could be two or three, especially if more than one person/team is working within the same Launch property. If you're creating a new Development environment every time you're making some changes in Launch, then be aware that you don't have to do that. After a library has been moved up to Staging or Production, the Development environment does not have any library, and you can load another library into it.

View solution in original post

3 Replies

Avatar

Community Advisor

Firstly, there are 3 kinds of environments in Adobe Launch: Development, Staging, and Production. Within each kind, you can only have Staging environment and one Production environment. But you can have as many Development environments as you want.

So what you have are 7 Development environments (01-07).

Libraries are "packages" of changed resources (rules, data elements, extensions). You can think of them as building blocks.

When a library has been published in Production, then all of its resources are available for use in the lower environments (Staging and your 7 Development environments) automatically.

Likewise, when a library has been published in Staging, then all of its resources are available for use in the lower environments (your 7 Development environments) automatically.

Each environment can use one library only. HOWEVER, since a environment has the settings of higher environments, so a library in your Development environment only needs to have the changes that you want, and all other settings in the Staging and Production environments will be inherited "automatically".

Here's an example:

Let's say that in Production, you have 2 libraries that have been published already:

Library 1: Core extension rev1, AA extension rev1, Rule to send an AA beacon on DOM Loaded rev1.

Library 2: AA extension rev2, Data element to read a cookie value rev1.

So as of now, the Production environment has the following:

  • Core extension rev1
  • AA extension rev2 (not rev1, because the resource in library 2 overwrote the same resource in library 1)
  • Rule to send an AA beacon on DOM Loaded rev1
  • Data element to read a cookie value rev1

Then, in Staging environment, you have this:

Library 3: Core extension rev2, Rule to send an AA beacon when clicking a link rev1.

So as of now, the Staging environment has the following:

  • Core extension rev2 (not rev1, because the resource in library 3 overwrote the same resource in library 1)
  • AA extension rev2
  • Rule to send an AA beacon on DOM Loaded rev1
  • Rule to send an AA beacon when clicking a link rev1
  • Data element to read a cookie value rev1

Then, in Development environment 01, you have this:

Library 4: Core extension rev3, Rule to send an AA beacon on DOM Loaded rev2

So as of now, the Development environment 01 has the following:

  • Core extension rev3 (not rev2, because the resource in library 2 overwrote the same resource in library 4)
  • AA extension rev2
  • Rule to send an AA beacon on DOM Loaded rev2 (not rev1, because the resource in library 4 overwrote the same resource in library 1)
  • Rule to send an AA beacon when clicking a link rev1
  • Data element to read a cookie value rev1

And let's say in Development environment 02, you have this:

Library 5: AA extension rev3, Data element to read a cookie value rev2

So as of now, the Development environment 02 has the following:

  • Core extension rev2 (not rev3, because this environment inherits the settings of higher environments Staging and Production, but not of similar environments Development 01, 03-07)
  • AA extension rev3 (not rev2, because the resource in library 5 overwrote the same resource in library 2)
  • Rule to send an AA beacon on DOM Loaded rev1(not rev2, because this environment inherits the settings of higher environments Staging and Production, but not of similar environments Development 01, 03-07)
  • Rule to send an AA beacon when clicking a link rev1
  • Data element to read a cookie value rev2 (not rev1, because the resource in library 5 overwrote the same resource in library 2)

Hopefully, the above example helps you to better understand how libraries work in environments. If so, then you should be able to figure out all of the resources that are available to use in your Development 07 environment, and hopefully, you can then figure out why your updates are not working in the way you expect them to,

Avatar

Level 2

Hi yuhuisg

Thank you so much for your answer!
The detailed case breakdown helps me a lot and now I think I can understand the proper way to add library.

I just like to ask you more because we've already published all resources in production before.  So what I need to do is just to create new environment (07) and install - insert the tag (launch-***-develoment.min.js) into the site.  (considering your saying "when a library has been published in Production, then all of its resources are available for use in the lower environments automatically.")

But no logs fired and launch-***-develoment.min.js file got 404 error.

Was it because it takes time to take effect or was it due to something else?
I would like to know if there is anything else to consider.

Thanks again

Avatar

Correct answer by
Community Advisor

You're most likely getting the 404 error with your Launch snippet because of 1 of 2 reasons:

  • There is no library being used in that particular Development environment.
  • You have not built that particular Development environment.

To double-check: open your Publishing Flow page in Launch. Under the Development column, you should see your library. Within that library, verify the following:

  • The environment that is set in there is your particular Development environment. If the environment is not set or it's set to another environment, then change it to your particular Development environment.
  • The coloured dot next to your library's name is green. If it's not green, then you need to build your library.

Also, why do you create so many Development environments? Normally, one is sufficient. At some organisations, there could be two or three, especially if more than one person/team is working within the same Launch property. If you're creating a new Development environment every time you're making some changes in Launch, then be aware that you don't have to do that. After a library has been moved up to Staging or Production, the Development environment does not have any library, and you can load another library into it.