We just finished our first dynamic pipelines Forge app and I have to say I'm very impressed. This couldn't have come at a better time, as we're in a perfect place in our Bamboo to Pipelines transition to take advantage of this.
I do have some thoughts about things that I have come across:
- It would be great to have importable JSDoc and/or a good official TypeScript exemplar
- We are getting pretty desperate for access to the deployment and environment API endpoints, and will probably end up trying to do something hacky with Forge Remote when it becomes a blocker in the next week or two
- It would be nice if there was the ability to put custom configuration nodes into the bitbucket-pipelines.yml file. We tried using labels, but found it far too limiting to satisfy our purposes. We opted instead to have a file checked into the repo with the build setting options.
- There seems to be at least one bug in the parsing of the labels. I can take the time to provide a reproduction case if you would like, but when trying to use multi-line strings I would eventually get the error saying that the label key must not be more than 5 characters.
- The partial implementation of node-fetch appears to have a bug also. When requesting route`/2.0/repositories/${workspaceId}/${repositoryId}/src/${ref}/.bitbucket/build-rules.yml` we get a permission issue, if I remove the .bitbucket it works fine.
- forge lint, even after upgrading forge always returns this error: 2:2 error invalid value 'bitbucket:dynamicPipelinesProvider' in modules valid-module-required - everything proceeds to run fine, I just constantly get that message.