Custom Sync
CUSTOM_SYNC
is one stage in the pipeline and you can define scripts to deploy run in this stage.
Note: This feature is marked as a deprecated feature and will be removed later.
How to configure Custom Sync
Add a CUSTOM_SYNC
to your pipeline and write commands to deploy your infrastructure.
The commands run in the directory where this application configuration file exists.
apiVersion: pipecd.dev/v1beta1
kind: LambdaApp
spec:
name: sam-simple
labels:
env: example
team: abc
planner:
# Must add this configuration to force use CUSTOM_SYNC stage.
alwaysUsePipeline: true
pipeline:
stages:
- name: CUSTOM_SYNC
with:
envs:
AWS_PROFILE: "sample"
run: |
cd sam-app
sam build
echo y | sam deploy --profile $AWS_PROFILE
Note:
- You can use
CUSTOM_SYNC
with any current supporting application kind, but keepalwaysUsePipeline
true to not run the application kind’s defaultQUICK_SYNC
. - Only one
CUSTOM_SYNC
stage should be used in an application pipeline. - The commands run with the enviroment variable
PATH
that refers~/.piped/tools
at first.
The public piped image available in PipeCD main repo (ref: Dockerfile) is based on alpine and only has a few UNIX command available (ref: piped-base Dockerfile). If you want to use your commands (sam
in the above example), you can:
- Prepare your own environment container image then add piped binary to it.
- Build your own container image based on
ghcr.io/pipe-cd/piped
image. - Manually update your running piped container (not recommended).
Auto Rollback
When autoRollback
is enabled, the deployment will be rolled back in the same way as Rolling Back.
When the rolling back process is triggered in the pipeline including CUSTOM_SYNC
, CUSTOM_SYNC_ROLLBACK
stage will be added to the deployment pipeline.
CUSTOM_SYNC_ROLLBACK
is different from ROLLBACK
that applications set defaultly, it runs the same commands as CUSTOM_SYNC
in the runnning commit to reverts all the applied changes.
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.