Migrating from Alauda DevOps Tekton v3 to Alauda DevOps Pipelines
- This guide is specifically for migrating from
Alauda DevOps Tekton v3toAlauda DevOps Pipelines. For upgrading betweenAlauda DevOps Pipelinesversions, please refer to the Pipelines upgrade documentation.
This guide provides detailed steps for smoothly migrating from Alauda DevOps Tekton v3 to Alauda DevOps Pipelines. The upgrade process is designed as a seamless migration to ensure your existing CI/CD pipelines remain unaffected.
TOC
Migration Steps
1. Uninstall Existing Tekton Pipeline Instance and Alauda DevOps Tekton v3
Before starting the upgrade, you need to uninstall the existing Tekton components. Follow these steps:
Important Note: The uninstallation process will not affect your existing Task, TaskRun, Pipeline, and PipelineRun resources. These resources will remain unchanged after the upgrade is complete.
-
Delete Pipeline Instance
-
Verify Pipeline Instance Deletion
Ensure the command returns no resources, indicating successful deletion.
-
Uninstall Tekton Operator
-
Verify Operator Uninstallation
Ensure the command returns no results, indicating successful uninstallation.
2. Deploy Alauda DevOps Pipelines
- Navigate to your cluster's
Administrator->Application Market Management->OperatorHubpage - Search for and select Alauda DevOps Pipelines
- Choose the appropriate Channel
Critical: Channel Selection
When deploying Alauda DevOps Pipelines, you MUST select the pipelines-4.0 channel. DO NOT select the latest channel.
- Channel: Must be
pipelines-4.0(required forKatanomipipeline compatibility) - Version: You may select any version within the
pipelines-4.0channel
Selecting the latest channel may cause automatic upgrades to v4.x or higher versions in the future, which could lead to irreversible compatibility issues with Katanomi pipelines.
-
Follow the on-screen instructions to complete the deployment
-
Wait for
Alauda DevOps PipelinesOperator to be ReadyAfter the
Alauda DevOps PipelinesOperator deployment is complete, it will automatically deploy related components such asPipelines. You can check the component status using the following commands:Wait until both resources show a
Readystatus before proceeding to the next step.
3. (Optional) Adjust Operator Resources for Large-Scale Migrations
If your environment contains a large number of existing TaskRun and PipelineRun resources, the Tekton Operator may encounter Out of Memory (OOM) errors during the one-time data migration process. Since the operator doesn't normally require such extensive resources, the default resource limits may be insufficient.
When to Apply This Configuration
This step is only necessary if you have a large volume of existing Tekton resources. For most installations, you can skip this step and proceed to step 4.
Adjusting Operator Resources
You can temporarily increase the operator's resource limits using either of these methods:
Method 1: Using the Platform UI
- Navigate to the
Alauda DevOps Pipelinesoperator page - Go to the Subscription tab
- Click the Edit Subscription button
- Add the resource configuration as shown below
Method 2: Using kubectl CLI
Add the following config section under spec:
The resources values can be adjusted based on your environment's needs. The example below provides a balanced configuration suitable for most scenarios.
This configuration adjusts the tekton-operator Pod's resource quotas.
The operator will automatically begin migrating existing Tekton resources after deployment. You can monitor the migration progress through operator logs or check the TektonConfig status as described in step 5 below. Once migration is complete, you can remove the config section to restore default settings.
- If you previously used
Tektononly inAlauda Container Platform Builds, you can skip the following steps and use the default configuration ofAlauda DevOps Pipelinesdirectly.
4. Configure TektonConfig
- If you previously used
Tektononly inAlauda Container Platform Builds, you can skip the following steps and use the default configuration ofAlauda DevOps Pipelinesdirectly.
After the Alauda DevOps Pipelines Operator deployment is complete, you need to configure the TektonConfig resource to ensure compatibility with your existing system:
Best Practice: It is recommended to only modify the
spec.pipelinesection configuration to maintain system stability.
Important: Ensuring Both Legacy and New Pipelines Work
The configuration above sets runAsUser: 0 in the global default-pod-template to ensure backward compatibility with your existing Pipelines and container images.
However, this configuration will cause new Pipelines using Tasks from the Tekton catalog to fail, because these catalog Tasks require runAsUser: 65532 and fsGroup: 65532 for security and proper file permissions.
Solution: To ensure both legacy Pipelines and new Pipelines (using official Tasks) work correctly, you need to override the Pod template configuration at the PipelineRun level for Pipelines using official Tasks.
For detailed guidance on how to configure Pod templates for different scenarios, including:
- How to override Pod template for specific PipelineRuns
- Using TaskRunSpecs for fine-grained control when mixing official and custom Tasks
- Security best practices and configuration examples (see Example 5: Using Official Tasks with Legacy Global Configuration)
Please refer to the .
5. (Optional) Monitor and Verify Migration Progress
After the Alauda DevOps Pipelines operator is deployed (step 2), it automatically begins migrating existing Tekton resources. You can monitor the migration progress and verify completion at any time during or after the configuration process.
Method 1: Monitor Through Operator Logs
You can watch the migration progress in real-time by checking the tekton-operator-webhook logs:
During the migration, you will see log entries like:
migrating %d group resources- Indicates the total number of resource types to be migratedmigrating group resource- Shows when migration of a specific resource type beginsmigration completed- Confirms that migration of a specific resource type has finished
Method 2: Check TektonConfig Status
To verify that the migration is complete, check the TektonConfig resource status:
Look for the version annotations in the output:
Migration is complete when pre-upgrade-version and post-upgrade-version match the current version.
Reminder
If you adjusted the operator resources in step 3, you can now remove the config section from the Subscription to restore default resource settings.
6. Configure Log Access Permissions
- If you previously used
Tektononly inAlauda Container Platform Builds, you can skip the following steps and use the default configuration ofAlauda DevOps Pipelinesdirectly.
Since the results-from: sidecar-logs feature is enabled, you need to configure log access permissions for the controller:
Technical Note: This configuration allows the controller to retrieve results information from pod logs. For detailed information, please refer to the Tekton official documentation.
Migration Complete
After completing the above steps, you have successfully migrated from Alauda DevOps Tekton v3 to Alauda DevOps Pipelines. The new version provides:
- Enhanced system stability
- Richer feature set
- Better performance
- More flexible configuration options
We recommend reviewing the Alauda DevOps Pipelines documentation to understand all the features the new version offers and take full advantage of its capabilities.