11package porcelain
22
33import (
4+ "time"
5+
46 "github.com/go-openapi/runtime"
57 httptransport "github.com/go-openapi/runtime/client"
68 "github.com/go-openapi/strfmt"
@@ -11,6 +13,7 @@ import (
1113const DefaultSyncFileLimit = 7000
1214const DefaultConcurrentUploadLimit = 10
1315const DefaultRetryAttempts = 3
16+ const DefaultPreProcessingTimeout = time .Minute * 5
1417
1518// Default netlify HTTP client.
1619var Default = NewHTTPClient (nil )
@@ -41,17 +44,19 @@ func NewRetryable(transport runtime.ClientTransport, formats strfmt.Registry, at
4144func New (transport runtime.ClientTransport , formats strfmt.Registry ) * Netlify {
4245 n := plumbing .New (transport , formats )
4346 return & Netlify {
44- Netlify : n ,
45- syncFileLimit : DefaultSyncFileLimit ,
46- uploadLimit : DefaultConcurrentUploadLimit ,
47+ Netlify : n ,
48+ syncFileLimit : DefaultSyncFileLimit ,
49+ uploadLimit : DefaultConcurrentUploadLimit ,
50+ preProcessingTimeout : DefaultPreProcessingTimeout ,
4751 }
4852}
4953
5054// Netlify is a client for netlify
5155type Netlify struct {
5256 * plumbing.Netlify
53- syncFileLimit int
54- uploadLimit int
57+ syncFileLimit int
58+ uploadLimit int
59+ preProcessingTimeout time.Duration
5560}
5661
5762func (n * Netlify ) SetSyncFileLimit (limit int ) {
@@ -63,3 +68,9 @@ func (n *Netlify) SetConcurrentUploadLimit(limit int) {
6368 n .uploadLimit = limit
6469 }
6570}
71+
72+ func (n * Netlify ) SetPreProcessingTimeout (dur time.Duration ) {
73+ if dur > 0 {
74+ n .preProcessingTimeout = dur
75+ }
76+ }
0 commit comments