This PR ensures that if a generated pipeline has no steps, it will skip the upload step. The generatePipeline() function now returns a boolean indicating whether any steps were generated. The uploadPipeline() function uses this boolean to decide whether to proceed with uploading the pipeline.
This PR ensures that if a generated pipeline has no steps, it will skip the upload step. The generatePipeline() function now returns a boolean indicating whether any steps were generated. The uploadPipeline() function uses this boolean to decide whether to proceed with uploading the pipeline.