Comments (8)
Yes, I totally agree. We should provide a trigger policy to allow user to configure.
When we using Tekton Triggers in our PoC, we can allow user to configure the trigger policy like below:
- No trigger (Only rebuild by config change)
- Trigger by Git commit
- Trigger by baseimage change
- Trigger by buildpack version change
But for this Trigger by buildstrategy change, I think we still need a good design for it.
Such as when buildstrategy is changed,
- should we create a new buildrun or just re-run the existing buildrun?
- Is there any different for the cluster scope and namespaced buildstrategy change?
I think we can have more discussion in future when we want to add it.
from build.
@zhangtbj, @sbose78 I also like the idea. Making a extensibility point to trigger builds when an external resource changes is great in terms of usability. So a big +1 on this subject.
Thinking on use-cases, security inspection and re-triggering build of images upon CVEs, could also benefit from this new feature.
from build.
@sbose78, any idea?
from build.
@zhangtbj Good point. I was looking to have some kind of validation ( not just the openapi validation ) on the BuildStrategy whenever a new BuildStrategy is 'registered'. I haven't had a chance to define what that could look like. Is there anything you think we should have as a validation process ?
If not, I'm good with having it removed. We can always bring it back later on when we have something more concrete.
from build.
Yes, I think that is only a reason to keep the status.
And I think that is also a reason to keep the buildstrategy-controller. :)
I think maybe there are some scenarios:
- validate if the grammer or yaml format is correct by using controller, and report the check result in the status
- keep all the builds which are built by this buildstrategy, and if the buildstratgy is updated, all build can be noticed or rebuilt
But I think they are low properties for Alpha or Beta. So I suggest we can remove it first, and in future, if there is any good scenario, we can bring it back directly. :)
from build.
And I think that is also a reason to keep the buildstrategy-controller. :)
Here's what I have in mind with respect to the [cluster]buildstrategy-controller
#71
from build.
keep all the builds which are built by this buildstrategy, and if the buildstratgy is updated, all build can be noticed or rebuilt
I think this is a very valid scenario. Especially for strategies which have images specified. Imagine a security vulnerability making us update the image specified in a build strategy. That should definitely re-trigger Builds.
Now, should we always trigger builds? I guess it should be a configurable by the user.
After we separate Build & BuildRun, we should also add an API field triggerOnChange
.
apiVersion: build.dev/v1alpha1
kind: Build
metadata:
name: example-build-buildpack
spec:
source:
url: https://github.com/sclorg/nodejs-ex
credentials:
name: source-repository-credentials
strategy:
name: buildpacks-v3
Kind: ClusterBuildStrategy <-- triggers should happen for both namespace & cluster-scoped stratgies.
triggerOnChange: true <--- if strategy changes, a new BuildRun should be instantiated.
from build.
I think the general consensus here is that there might be room for the Status field in the strategy. Based on the nice feedback in here, Iยดm closing this issue because the goal of it seems to be accomplished. @zhangtbj please feel free to re-open if I did a mistake.
from build.
Related Issues (20)
- [BETA API] Update controllers to use Beta API
- Unsupported type of credentials provided, either SSH private key or username/password is supported (exit code 110) HOT 10
- Feature Discussion: Primary Support for Multi-Arch Builds HOT 8
- Git source: prevent usage of a secret with HTTP protocol
- Git source: verify usage of BitBucket
- Git source: doublecheck logging of the source URL HOT 1
- BuildRuns without BuildRef can not be canceled
- Bump go modules and CI to go v1.19
- SHP Logo not optimal with Github Dark Themes
- Add a feature/functionality to reduce the image size using dockerslim HOT 1
- GitHub Action workflow does not start when PR is created by GitHub Action HOT 1
- Following quickstart docs: Standalone BuildRun no status HOT 2
- Bump k8s version and mod dependencies
- S2I Chained builds HOT 11
- (Cluster)BuildStrategy CR about buildpacks are outdated HOT 1
- Missing custom resource definitions when installing build strategies HOT 3
- README is not match tag HOT 3
- README is not match tag
- Update Heroku sample strategies to heroku-22 stack HOT 1
- `make install` fails at creation of buildruns CRD
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from build.