From 095787f163bdc4539f05762c3496c68553911a78 Mon Sep 17 00:00:00 2001 From: rstratkovinfrag Date: Tue, 12 Aug 2025 11:51:56 +0300 Subject: [PATCH 1/3] Separate charts in build --- .../igniteui-angular-grid-examples.yml | 66 +++++++++---------- 1 file changed, 31 insertions(+), 35 deletions(-) diff --git a/azure-pipelines/igniteui-angular-grid-examples.yml b/azure-pipelines/igniteui-angular-grid-examples.yml index ce40427..cb0e01b 100644 --- a/azure-pipelines/igniteui-angular-grid-examples.yml +++ b/azure-pipelines/igniteui-angular-grid-examples.yml @@ -43,41 +43,37 @@ stages: inputs: targetType: 'inline' script: | - # Define the root path where projects are located - rootPath="$(Build.SourcesDirectory)/projects" - - # Get all first-level subdirectories in the specified root path - subdirectories=$(find "$rootPath" -mindepth 1 -maxdepth 1 -type d) - - for subdirectory in $subdirectories; do - # Extract the directory name from the path - dirName=$(basename "$subdirectory") - - # Give each sample a version in its package.json file - for traceability - cd "$subdirectory" - echo "Calling npm version command" - npm version $(Build.BuildNumber) --no-git-tag-version - - # Check if the directory name is already camel-case - if [[ "$dirName" =~ ^[A-Z]+[a-z]+([A-Z][a-z]*)*$ ]]; then - # If already camel-case, print it as is - echo "$dirName" - else - # Convert to camel-case (capitalize first letters and remove hyphens) - dirName=$(echo "$dirName" | sed -E 's/(^|-)([a-z])/\U\2/g') - - fi - - echo "Processing directory: $dirName" - - # Define the name for the zip file - zipName="$(Build.ArtifactStagingDirectory)/IgniteUI_Angular_ApplicationSample_${dirName}_Source.zip" - echo "Creating ZIP: $zipName" - - # Compress the directory into a ZIP file - (cd "$subdirectory" && zip -r "$zipName" .) - done - + create_zips() { + local rootPath="$1" + if [ -d "$rootPath" ]; then + subdirectories=$(find "$rootPath" -mindepth 1 -maxdepth 1 -type d) + for subdirectory in $subdirectories; do + dirName=$(basename "$subdirectory") + + cd "$subdirectory" + echo "Calling npm version command for $dirName" + npm version $(Build.BuildNumber) --no-git-tag-version + + if [[ "$dirName" =~ ^[A-Z]+[a-z]+([A-Z][a-z]*)*$ ]]; then + echo "$dirName" + else + dirName=$(echo "$dirName" | sed -E 's/(^|-)([a-z])/\U\2/g') + fi + + echo "Processing directory: $dirName" + zipName="$(Build.ArtifactStagingDirectory)/IgniteUI_Angular_ApplicationSample_${dirName}_Source.zip" + echo "Creating ZIP: $zipName" + (cd "$subdirectory" && zip -r "$zipName" .) + done + fi + } + + # Pass 1: All first-level directories in projects/ + create_zips "$(Build.SourcesDirectory)/projects" + + # Pass 2: All first-level directories in projects/charts/ + create_zips "$(Build.SourcesDirectory)/projects/charts" + echo "All sample projects have been compressed and saved to the artifacts directory." - task: PublishPipelineArtifact@1 From 8889fbd03e6c0090412e7524d339644648935821 Mon Sep 17 00:00:00 2001 From: rstratkovinfrag Date: Tue, 19 Aug 2025 14:05:39 +0300 Subject: [PATCH 2/3] Tracability improvements --- azure-pipelines/igniteui-angular-grid-examples.yml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/azure-pipelines/igniteui-angular-grid-examples.yml b/azure-pipelines/igniteui-angular-grid-examples.yml index cb0e01b..71eb2a0 100644 --- a/azure-pipelines/igniteui-angular-grid-examples.yml +++ b/azure-pipelines/igniteui-angular-grid-examples.yml @@ -46,23 +46,32 @@ stages: create_zips() { local rootPath="$1" if [ -d "$rootPath" ]; then + # Get all first-level subdirectories in the specified root path subdirectories=$(find "$rootPath" -mindepth 1 -maxdepth 1 -type d) for subdirectory in $subdirectories; do + # Extract the directory name from the path dirName=$(basename "$subdirectory") + # Give each sample a version in its package.json file - for traceability cd "$subdirectory" - echo "Calling npm version command for $dirName" + echo "Setting project version in package.json to $(Build.BuildNumber) for $dirName" npm version $(Build.BuildNumber) --no-git-tag-version + # Check if the directory name is already camel-case if [[ "$dirName" =~ ^[A-Z]+[a-z]+([A-Z][a-z]*)*$ ]]; then + # If already camel-case, print it as is echo "$dirName" else + # Convert to camel-case (capitalize first letters and remove hyphens) dirName=$(echo "$dirName" | sed -E 's/(^|-)([a-z])/\U\2/g') fi echo "Processing directory: $dirName" + # Define the name for the zip file zipName="$(Build.ArtifactStagingDirectory)/IgniteUI_Angular_ApplicationSample_${dirName}_Source.zip" echo "Creating ZIP: $zipName" + + # Compress the directory into a ZIP fil (cd "$subdirectory" && zip -r "$zipName" .) done fi From 6c631c98cd3c24e9052cc86d14299eedb7c16ddd Mon Sep 17 00:00:00 2001 From: rstratkovinfrag Date: Tue, 19 Aug 2025 14:09:39 +0300 Subject: [PATCH 3/3] add missing character --- azure-pipelines/igniteui-angular-grid-examples.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azure-pipelines/igniteui-angular-grid-examples.yml b/azure-pipelines/igniteui-angular-grid-examples.yml index 71eb2a0..c0994cc 100644 --- a/azure-pipelines/igniteui-angular-grid-examples.yml +++ b/azure-pipelines/igniteui-angular-grid-examples.yml @@ -71,7 +71,7 @@ stages: zipName="$(Build.ArtifactStagingDirectory)/IgniteUI_Angular_ApplicationSample_${dirName}_Source.zip" echo "Creating ZIP: $zipName" - # Compress the directory into a ZIP fil + # Compress the directory into a ZIP file (cd "$subdirectory" && zip -r "$zipName" .) done fi