Tingluo Huang
601d3de3f3
Better step timeout message. ( #3166 )
2024-02-26 15:37:59 +00:00
Enes Çakır
6603bfb74c
Add a retry logic to docker login operation ( #3089 )
...
While there's an existing retry mechanism for the `docker pull` command
[^1], it's missing for `docker login`.
Similar to the `docker pull` scenario, the container registry could
potentially be briefly unavailable or inaccessible, leading to failed
`docker login` attempt and subsequent workflow run failures.
Since it's container based workflow, there is not way to retry on
customer side. The runner should retry itself.
It also aligns with community feedback [^2].
[^1]: 8e0cd36cd8/src/Runner.Worker/ContainerOperationProvider.cs (L201)
[^2]: https://github.com/orgs/community/discussions/73069
Co-authored-by: Thomas Boop <52323235+thboop@users.noreply.github.com >
2024-02-21 17:32:37 +00:00
David Omid
927b26a364
Process snapshot tokens ( #3135 )
...
* Added Snapshot TemplateToken to AgentJobRequestMessage
* WIP for processing the snapshot token
* Changed snapshot post job step condition to Success, added comments
* Refactored snapshot post-job step
* Added evaluation of snapshot token to retrieve image name
* Added snapshot to workflow schema
* Fixed linter error
* Migrated snapshot logic to new SnapshotOperationProvider
* Fixed linter error
* Fixed linter errors
* Fixed linter error
* Fixed linter errors
* Updated L0 tests
* Fixed linter errors
* Added new JobExtensionL0 tests for snapshot post-job step
* Added JobExtensionL0 test case for snapshot mappings
* Added SnapshotOperationProviderL0 tests
* Enabled nullable types for SnapshotOperationProvider and its tests
* Added more assertions to SnapshotOperationProviderL0 tests
* Fixed linter errors
* Made sure TestHostContexts are disposed of properlyh in SnapshotOperationProviderL0 tests
* Resolved PR comments
* Fixed formatting
* Removed redundant reference
* Addressed PR comments
2024-02-14 21:34:52 -05:00
Josh Soref
fa874cf314
Improve error report for invalid action.yml ( #3106 )
2024-02-06 13:40:53 +00:00
Yang Cao
1d82031a2c
Make sure to drain the upload queue before clean temp directory ( #3125 )
2024-02-02 20:37:45 +00:00
Jonathan Tamsut
11680fc78f
Upload the diagnostic logs to the Results Service ( #3114 )
...
* upload diagnostic logs to results
* correct casing
* correct typo
* update contract
* update constant and define private method
* fix access
* fix reference to logs url
* update
* use results func
* fix method naming
* rename to match rpc
* change API contract
* fix lint issue
* refactor
* remove unused method
* create new log type
2024-02-01 14:27:06 -05:00
Tingluo Huang
7414e08fbd
Add user-agent to all http clients using RawClientHttpRequestSettings. ( #3115 )
2024-01-30 13:39:41 -05:00
Tingluo Huang
b7ab810945
Make embedded timeline record has same order as its parent record. ( #3113 )
2024-01-26 17:26:30 -05:00
Tingluo Huang
fb4bdbe440
Provide detail info on untar failures. ( #2939 )
2023-10-19 08:15:06 -04:00
Tingluo Huang
4647f3ed5f
Fix telemetry publish from JobServerQueue. ( #2919 )
2023-10-10 14:24:25 -04:00
Tatyana Kostromskaya
544f19042b
Revert "Update default version to node20 ( #2844 )" ( #2918 )
...
This reverts commit acdc6edf7c .
2023-10-10 15:10:43 +00:00
Tatyana Kostromskaya
acdc6edf7c
Update default version to node20 ( #2844 )
2023-10-09 04:48:16 +00:00
Tingluo Huang
f672567acc
Collect telemetry to measure upload speed for different backend. ( #2912 )
2023-10-05 23:29:38 -04:00
Tingluo Huang
f57ecd8e3c
Allow use action archive cache to speed up workflow jobs. ( #2857 )
...
* Refactor ActionManager.cs
* changes.
* cleanup
2023-09-28 23:43:55 +00:00
Yang Cao
463ec00cb4
Do not give up if Results is powering logs ( #2893 )
...
* Do not give us if Results is powering logs
* No need to send telemtry to Actions server in Results only case
2023-09-28 20:05:11 +00:00
Tingluo Huang
2a6f271afa
Throw TimeoutException instead of OperationCanceledException on the final retry in DownloadRepositoryAction. ( #2895 )
2023-09-28 13:35:55 +00:00
Tatyana Kostromskaya
462337a4a4
Add warning about node16 deprecation ( #2887 )
...
* add warning about node16 deprecation
* fix comments
2023-09-28 08:52:35 +00:00
Tingluo Huang
8f1c070506
Use Directory.EnumerateFiles instead of Directory.GetFiles in WhichUtil. ( #2882 )
...
* Use Directory.EnumerateFiles instead of Directory.GetFiles in WhichUtil.
* .
* .
2023-09-26 20:49:15 +00:00
Tingluo Huang
6a2381f525
Remove unused code in AgentManager. ( #2866 )
2023-09-20 14:50:09 +00:00
Nikola Jokic
16834edc67
Calculate docker instance label based on the hash of the config ( #2683 )
2023-09-18 09:56:47 +00:00
Cory Miller
7b703d667d
Mark action download failures as infra failures ( #2827 )
...
* Mark action download failures as infra failures
* Fix Windows variable name
* Update src/Runner.Worker/ActionManager.cs
Co-authored-by: Thomas Boop <52323235+thboop@users.noreply.github.com >
* Apply suggestions from code review
Co-authored-by: Thomas Boop <52323235+thboop@users.noreply.github.com >
---------
Co-authored-by: Thomas Boop <52323235+thboop@users.noreply.github.com >
2023-09-06 13:32:57 +00:00
Pavel Iakovenko
2b66cbe699
Delegating handler for Http redirects ( #2814 )
...
* Delegating handler for Http redirects
* Renamed varible name
2023-08-31 17:35:50 -04:00
Cory Miller
8b9a81c952
Filter NODE_OPTIONS from env for file output ( #2775 )
...
Copies logic that used to be in ::set::env before its deprecation
2023-08-16 17:56:01 -04:00
Cory Miller
460d9ae5a8
Revert "Fixed a bug where a misplaced = character could bypass heredoc-style processing. ( #2627 )" ( #2774 )
...
This reverts commit 4ffd081aea .
2023-08-16 15:03:55 -04:00
Tingluo Huang
4f40f29cff
Trace x-github-request-id when download action tarball. ( #2755 )
2023-08-15 19:00:54 -04:00
Tatyana Kostromskaya
8206cf4e73
Add node20 to runner ( #2732 )
...
* .
* fix hashes
* fix linux-arm
* linux-arm64
* osx-x64
* win-x64
* clean up node12 deprecation warning
* Add node20
* Remove node12 from the BuildInVersions list
* fix externals hash
2023-08-11 11:11:28 +02:00
Tatyana Kostromskaya
9eb4b96713
Remove node12 ( #2717 )
...
* .
* fix hashes
* clean up node12 deprecation warning
* Remove node12 from the BuildInVersions list
2023-08-10 15:16:30 +02:00
Tingluo Huang
8fa970a1e6
Change RunnerId/AgentId from int32 to uint64 ( #2661 )
...
* RunnerId int -> ulong
2023-08-04 16:22:52 -04:00
Rob Herley
f6e9809844
Expose results service endpoint as environment variable ( #2726 )
...
* Add results service url endpoint to environment
* linter: fix file encoding
2023-07-31 22:18:14 -04:00
Ferenc Hammerl
7cb61925b0
Pass timeout in executioncontext instead of stepsrunner ( #2714 )
...
* Pass timeout in executioncontext instead of stepsrunner
* Fix linting
2023-07-25 14:12:00 +02:00
JoannaaKL
496904c0b7
Fix feature flag location ( #2703 )
2023-07-19 12:19:42 +02:00
Tingluo Huang
b91ad56f92
Check connectivity for endpoints requested by service. ( #2691 )
2023-07-17 08:36:20 -04:00
Ferenc Hammerl
f25c9dfba3
Fixes if:cancelled() composite steps not running and normal composite steps not interrupting when the job is cancelled. ( #2638 )
...
* Set composite step's action_status when job is cancelled
Also make composite step inherit timeout from parent
* Fix eof line
2023-07-10 13:32:30 +02:00
Tatyana Kostromskaya
e8ee6f7b1b
Add warning to notify about forcing node16 ( #2678 )
...
* add warning
* fix tests
* aggregate to one warning
* fix linter
* fix comm
2023-07-07 11:35:54 +02:00
Cameron Booth
d4bbbb8419
Only add StepResult for Tasks, not the Job itself ( #2620 )
2023-06-30 04:17:46 -07:00
John Wesley Walker III
4ffd081aea
Fixed a bug where a misplaced = character could bypass heredoc-style processing. ( #2627 )
...
* Fixed a bug where a misplaced `=` character could bypass heredoc-style processing.
Fixes https://github.com/github/c2c-actions/issues/6910
GitHub Docs for context: https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#multiline-strings
* Consolidate near-identical FileCommand-related unit test classes. (#2672 )
2023-06-29 12:52:05 +02:00
Nikola Jokic
c05e6748c3
Extend github context with host-workspace ( #2517 )
...
* hash files translation works with host context translated
* Change file encoding to utf8 for PipelineTemplateConstants.cs
* infer the feature flag on hash files based on the existence of the context
* encoded utf8 with bom
* rename host-workspace to host-work-directory and feature flag the new context var
* Added comment to explain ignore host work directory resolution
Co-authored-by: fhammerl <fhammerl@github.com >
* trigger pipeline
* Move to the github host-workspace context instead of the runner host-work-directory
* remove unused imports
---------
Co-authored-by: fhammerl <fhammerl@github.com >
2023-06-29 12:12:23 +02:00
Nikola Jokic
a2b7856c9c
Fix error message reported on non-local action setup ( #2668 )
...
* Fix error message reported on non-local action setup
* Remove tostring left from string builder
2023-06-29 11:33:46 +02:00
Nikola Jokic
8415f13bab
removed throw and else on container action handler ( #1873 )
...
* removed throw and else on container action handler
* repaired merge resolution error
2023-06-16 21:53:52 -04:00
Dylan Geraci
1096b975e4
Send environment url to Run Service ( #2650 )
...
* add EnvironmentUrl to CompleteJobRequest
* Send environment url to Run Service
* Fix whitespace
* Fix test
* Fix more whitespace
* Apply suggestions from code review
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
* Apply suggestion from code review
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
---------
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
2023-06-16 04:13:08 +00:00
JoannaaKL
282ba4cfc8
Just dont log these errors ( #2656 )
...
* Dont log template errors
2023-06-13 21:10:53 -04:00
JoannaaKL
efffbaeabc
Add utf8 with bom ( #2641 )
...
* Change default file encoding
2023-06-02 21:47:59 +02:00
Nikola Jokic
3a1376f90e
Fix uses: docker://image:tag steps when container hook is used ( #2626 )
...
* Fix `uses: docker://image:tag` steps when container hook is used
* Update src/Runner.Worker/ActionManager.cs
---------
Co-authored-by: Ferenc Hammerl <31069338+fhammerl@users.noreply.github.com >
2023-06-02 11:01:59 +00:00
JoannaaKL
50b3edff3c
Revert "Dont log error twice in ExecutionContext on template error ( #2634 )"
...
This reverts commit 48cbee08f9 .
2023-06-01 06:46:10 +00:00
Nikola Jokic
58f7a379a1
Filter out empty arguments in container hooks ( #2633 )
2023-05-31 16:58:48 +02:00
JoannaaKL
48cbee08f9
Dont log error twice in ExecutionContext on template error ( #2634 )
2023-05-31 16:33:36 +02:00
Philip Harrison
21b49c542c
Set runner environment in context and env ( #2518 )
...
* Set runner environment in runner context and env
Extract runner_environment from the global context and expose in the
`github.runner` context and env as `RUNNER_ENVIRONMENT`.
Signed-off-by: Philip Harrison <philip@mailharrison.com >
* encoding.
---------
Signed-off-by: Philip Harrison <philip@mailharrison.com >
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
2023-05-26 13:08:41 -04:00
Vallie Joseph
49b04976f4
Adding Consistency to 'Failed To Resolve Action Download Info' Infrastructure Error Flagging ( #2488 )
...
* adding extra catch for download failure in composite actions
* Adding infra error
* Adding error handling centralizing
* updating try catch bubbling
* cleaning up commits
* cleaning up commits
* cleaning up commits
* updating bubbler
* cleaning up test files
* Fixing linting errors
* updating exception bubble
* reverting composite
* updating catch to not exclude other exceptions
* removing uneeded import
* Update src/Runner.Worker/ActionRunner.cs
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
* Update src/Runner.Worker/ActionManager.cs
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
* Update src/Runner.Worker/ActionManager.cs
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
* Update src/Runner.Worker/ActionManager.cs
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
* Update src/Runner.Worker/ActionManager.cs
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
* moving download out of for loop; reverting exception wrap
* Update src/Runner.Worker/ActionManager.cs
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
* Adding blank lines back
* Adding blank lines back
* removing uneeded catch for download fail
* adding var back for consistency
* formatting clean
---------
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
2023-05-11 14:57:24 -04:00
John Wesley Walker III
f8a28c3c4e
[1742] Ensure multiple composite annoations are correctly written. ( #2311 )
...
* [1742] Ensure multiple composite annoations are correctly written.
This implementation uses a collector pattern to allow embedded ExecutionContexts to stash Issue objects for later processing by a non-embedded ancestor ExecutionContext.
Also:
- Provide explicit constructor implementations for ExecutionContext
- Leverage explicit constructors to solidify immutability of several ExecutionContext class members.
- Fixed erroneous call to ExecutionContext.Complete in CompositeActionHandler.cs
- Use a consistent timestamp for FinishTime in ExecutionContext::Complete
* Ensure collected issues are processed only by a non-embedded ExecutionContext.
This was already implicit. Now, just making it explicit.
* Provide a clear mechanism that allows callers to opt-in/opt-out of ExecutionContext::AddIssue's logging behavior.
* Addressed deserialization inconsistencies in TimelineRecord.cs
* Added TimelineRecord unit tests.
* Refined unit tests related to TimelineRecord::Variables case-insensitivity
* Add a unit test that verifies ExecutionContextLogOptions::LogMessageOverride has the desired effect.
* Responded to PR feedback.
* Don't allow embedded ExecutionContexts to add Issues to a TimelineRecord
2023-05-10 16:24:02 +02:00
John Hernley
22d1938ac4
Resolve Actions Directly From Launch for Run Service Jobs ( #2529 )
...
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
2023-05-03 16:04:21 -04:00