Github integration issues - Why devices are skipped! -Solved

I have run across a kind of bizarre integration thing that I’m hoping some can help. Someone called it to my attention here: [Release] Zooz Zen21 switch v2

Now, mind you, I just set to integration this week. And I renamed my “SmartThingsPublic” to have my name, so it’s distinguishable in the IDE. However, since the zen21 works perfectly (and it’s the latest one I did), it can’t be a problem with the file structure.

So I tried to do the same DTH (zen22 v2) and got the same error. Then I tried some others and got the same error again. I thought maybe there were too many similarities in the names, so I tried shortening the names. Still the same thing.

I took my zen23 code, which was simply name-shortened and modified it to have the zen21 code. This time it updated - with a weird result. Based on the color coding (blue), it thought the code was modified in the IDE, but not in Github. I compared them - identical.

But I “commited” the changes anyway. Now I’m “black”.

So then I took my original zen23 code and pasted it into this new one in github. Update from repo, zero problems.

So now I’m completely baffled…

If it was the code, why did the final update work? If it was the structure, why did anything work? And how do I get this to work for anyone else who wants to use it? I’ve seen this issue reported elsewhere in the forum but never saw any kind of answer for it.

Anyone offer any suggestions on what I’m missing??

So I figured this out…

Not only should the file be:

But the metadata definition name ALSO has to match that name. Do, in the example above, if the metadata definition name was:
metadata {
definition (name: “Device Name”, namespace: “namespace”, author: “Name Space”) {

It will pull in fine. But if that metadata definition name doesn’t match - no go.

So this is the solution to “1 skipped due to errors”

@Jim - Could you comment on this? Did I miss it in the documentation or did I stumble upon something?

1 Like