Tag set error

Getting an error in 3.4 beta 2 when adding a new package step, whether or not I pick a tenant tag set

System.FormatException: Canonical Tag Name expected in the format of `TagSetName/TagName`
   at Octopus.Core.Model.TagSets.CanonicalTagName.FromFormattedName(String formattedName) in Y:\Work\refs\tags\3.4.0-beta.2\source\Octopus.Core\Model\TagSets\CanonicalTagName.cs:line 17
   at Octopus.Server.Web.CanonicalTagNameMapper.GetTagIdFromCanonicalTagName(String canonicalTagName) in Y:\Work\refs\tags\3.4.0-beta.2\source\Octopus.Server\Web\CanonicalTagNameMapper.cs:line 17
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at Octopus.Client.Model.ReferenceCollection.ReplaceAll(IEnumerable`1 newItems) in Y:\Work\refs\tags\3.4.0-beta.2\source\Octopus.Client\Model\ReferenceCollection.cs:line 34
   at Octopus.Server.Web.Api.Actions.DeploymentProcessUpdateAction.ConvertAction(DeploymentProcess process, DeploymentActionResource action) in Y:\Work\refs\tags\3.4.0-beta.2\source\Octopus.Server\Web\Api\Actions\DeploymentProcessUpdateAction.cs:line 237
   at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
   at Octopus.Server.Web.Api.Actions.DeploymentProcessUpdateAction.ConvertStep(DeploymentProcess process, DeploymentStepResource step) in Y:\Work\refs\tags\3.4.0-beta.2\source\Octopus.Server\Web\Api\Actions\DeploymentProcessUpdateAction.cs:line 216
   at System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at Octopus.Server.Web.Api.Actions.DeploymentProcessUpdateAction.ConvertSteps(DeploymentProcess process, IEnumerable`1 resources) in Y:\Work\refs\tags\3.4.0-beta.2\source\Octopus.Server\Web\Api\Actions\DeploymentProcessUpdateAction.cs:line 202
   at Octopus.Server.Web.Api.Actions.DeploymentProcessUpdateAction.Execute() in Y:\Work\refs\tags\3.4.0-beta.2\source\Octopus.Server\Web\Api\Actions\DeploymentProcessUpdateAction.cs:line 62
   at Octopus.Server.Web.Infrastructure.Api.Responder`1.Respond(TDescriptor options, NancyContext context) in Y:\Work\refs\tags\3.4.0-beta.2\source\Octopus.Server\Web\Infrastructure\Api\Responder.cs:line 162
   at System.Dynamic.UpdateDelegates.UpdateAndExecute3[T0,T1,T2,TRet](CallSite site, T0 arg0, T1 arg1, T2 arg2)
   at CallSite.Target(Closure , CallSite , Object , Object , NancyContext )
   at Octopus.Server.Web.Api.OctopusRestApiModule.<>c__DisplayClass0_0.<.ctor>b__0(Object o) in Y:\Work\refs\tags\3.4.0-beta.2\source\Octopus.Server\Web\Api\OctopusRestApiModule.cs:line 46
   at CallSite.Target(Closure , CallSite , Func`2 , Object )
   at Nancy.Routing.Route.<>c__DisplayClass4.<Wrap>b__3(Object parameters, CancellationToken context)

I only have one Tenant tag set setup, with two tags

Figured it out. I had changed the Tag Set name and added a slash “/” into the name. The tag set saved fine, however trying to use it does not. I took the slash out, and it now works fine.

Hi Mark,
It’s great to hear that you are are trying out the 3.4-beta2 build. You are correct that the tags wont play well with having a / character in its name since it is used to build the composite user friendly “canonical tag name” that identifies it for use in the API. It seems like we should be adding a bit more validation at the time of creation to prevent getting that exception at a later point.
Ill add this item to our backlog so that its handled a little nicer before the full RTW.
Thanks again for dropping us a line regarding this error. Hopefully we can make sure that its prevented before it becomes a problem.


This issue has been closed due to inactivity. If you encounter the same or a similar issue and require help, please open a new discussion (if we asked for logs or extra details in this thread, consider including them in the new thread). If you are the creator of this thread and believe it should not be closed let us know via our support email.