From c1a1d4e371c3a3c4e7bcbbf9c65cc9da922906cc Mon Sep 17 00:00:00 2001 From: Jacob Seman Date: Thu, 21 Dec 2023 09:47:06 -0700 Subject: [PATCH 1/2] applied Codespell fixes --- alire.toml | 2 +- gnd/hydra/README.md | 2 +- src/assembly/linux/linux_example.assembly.yaml | 2 +- src/assembly/linux/start_up.ads | 2 +- .../pico/pico_example.product_packets.yaml | 2 +- ...mponent-adc_data_collector-implementation.adb | 2 +- .../c_demo/test/tests-implementation.adb | 2 +- .../c_demo/test/tests-implementation.ads | 2 +- .../c_demo/test/tests.c_demo.tests.yaml | 2 +- .../counter/counter_action/counter_action.ads | 2 +- .../component-counter-implementation-tester.ads | 2 +- .../counter/test/tests-implementation.adb | 4 ++-- .../counter/test/tests-implementation.ads | 2 +- .../counter/test/tests.counter.tests.yaml | 2 +- .../cpp_demo/test/tests-implementation.adb | 2 +- .../cpp_demo/test/tests-implementation.ads | 2 +- .../cpp_demo/test/tests.cpp_demo.tests.yaml | 2 +- .../oscillator/test/oscillator.tests.yaml | 2 +- .../test/oscillator_tests-implementation.adb | 2 +- .../test/oscillator_tests-implementation.ads | 2 +- ...omponent-parameter_manager-implementation.ads | 2 +- .../parameter_manager.events.yaml | 2 +- ...t-parameter_manager-implementation-tester.adb | 2 +- ...t-parameter_manager-implementation-tester.ads | 2 +- .../parameter_manager_tests-implementation.adb | 16 ++++++++-------- src/pico_util/adc/main.adb | 2 +- 26 files changed, 34 insertions(+), 34 deletions(-) diff --git a/alire.toml b/alire.toml index a3c263b..850f6b6 100644 --- a/alire.toml +++ b/alire.toml @@ -4,7 +4,7 @@ # then uses these dependencies via the `alr printenv` GPR_BUILD_PATH to # compile targets within this repository. This alire.toml itself only points # to a simple hello world program that demonstrates tasking, LED blinking, -# and UART transmition on the Raspberry Pi Pico. +# and UART transmission on the Raspberry Pi Pico. # name = "adamant_example" diff --git a/gnd/hydra/README.md b/gnd/hydra/README.md index a1fca6e..6225e34 100644 --- a/gnd/hydra/README.md +++ b/gnd/hydra/README.md @@ -1,3 +1,3 @@ # Hydra -This includes common configuration files for the Example Project use with [Hydra](TODO). Note that Hydra is not yet publically available, but will be made so in the future. +This includes common configuration files for the Example Project use with [Hydra](TODO). Note that Hydra is not yet publicly available, but will be made so in the future. diff --git a/src/assembly/linux/linux_example.assembly.yaml b/src/assembly/linux/linux_example.assembly.yaml index 51f8880..961f5dc 100644 --- a/src/assembly/linux/linux_example.assembly.yaml +++ b/src/assembly/linux/linux_example.assembly.yaml @@ -127,7 +127,7 @@ components: init_base: - "T_Send_Count => 2" - type: Splitter - description: This component splits the event stream between events to printed to the terminal and those fowarded out of the socket interface. + description: This component splits the event stream between events to printed to the terminal and those forwarded out of the socket interface. name: Event_Splitter_2_Instance generic_types: - "T => Event.T" diff --git a/src/assembly/linux/start_up.ads b/src/assembly/linux/start_up.ads index f489542..9be70fb 100644 --- a/src/assembly/linux/start_up.ads +++ b/src/assembly/linux/start_up.ads @@ -11,7 +11,7 @@ package Start_Up is -- Note: This task termination prototype will only work on a native -- platform. Ada.Task_Termination has a different package spec for - -- embedded plaforms that use Ravenscar. + -- embedded platforms that use Ravenscar. protected Task_Termination is procedure Handler (Cause : Ada.Task_Termination.Cause_Of_Termination; T : Ada.Task_Identification.Task_Id; X : Ada.Exceptions.Exception_Occurrence); end Task_Termination; diff --git a/src/assembly/pico/pico_example.product_packets.yaml b/src/assembly/pico/pico_example.product_packets.yaml index 04e8896..3d44ce1 100644 --- a/src/assembly/pico/pico_example.product_packets.yaml +++ b/src/assembly/pico/pico_example.product_packets.yaml @@ -2,7 +2,7 @@ description: This is the set of packets for the data product packetizer in the Pico Example assembly. packets: - name: Housekeeping_Packet - description: This packet contains houskeeping data. + description: This packet contains housekeeping data. id: 1 data_products: - name: Oscillator_A.Oscillator_Value diff --git a/src/components/adc_data_collector/component-adc_data_collector-implementation.adb b/src/components/adc_data_collector/component-adc_data_collector-implementation.adb index 9f7c8d3..ddf4f6d 100644 --- a/src/components/adc_data_collector/component-adc_data_collector-implementation.adb +++ b/src/components/adc_data_collector/component-adc_data_collector-implementation.adb @@ -33,7 +33,7 @@ begin -- The Pico's power regulator dynamically adjusts it's switching frequency -- based on load. This introduces noise that can affect ADC readings. The -- Pico datasheet recommends setting Power Save pin high while performing - -- ADC measurements to minimize this noise, at tne expense of higher power + -- ADC measurements to minimize this noise, at the expense of higher power -- consumption. Pico.SMPS_PS.Configure (Output, Pull_Up); Pico.SMPS_PS.Clear; diff --git a/src/components/c_demo/test/tests-implementation.adb b/src/components/c_demo/test/tests-implementation.adb index e506552..137dd38 100644 --- a/src/components/c_demo/test/tests-implementation.adb +++ b/src/components/c_demo/test/tests-implementation.adb @@ -33,7 +33,7 @@ package body Tests.Implementation is -- Tests: ------------------------------------------------------------------------- - -- This unit test excersizes the c_demo component and makes sure it works + -- This unit test exercises the c_demo component and makes sure it works -- correctly. overriding procedure Test_C (Self : in out Instance) is T : Component.C_Demo.Implementation.Tester.Instance_Access renames Self.Tester; diff --git a/src/components/c_demo/test/tests-implementation.ads b/src/components/c_demo/test/tests-implementation.ads index 574f7f3..3433155 100644 --- a/src/components/c_demo/test/tests-implementation.ads +++ b/src/components/c_demo/test/tests-implementation.ads @@ -14,7 +14,7 @@ private overriding procedure Set_Up_Test (Self : in out Instance); overriding procedure Tear_Down_Test (Self : in out Instance); - -- This unit test excersizes the c_demo component and makes sure it works + -- This unit test exercises the c_demo component and makes sure it works -- correctly. overriding procedure Test_C (Self : in out Instance); diff --git a/src/components/c_demo/test/tests.c_demo.tests.yaml b/src/components/c_demo/test/tests.c_demo.tests.yaml index ad5c74b..63ed27a 100644 --- a/src/components/c_demo/test/tests.c_demo.tests.yaml +++ b/src/components/c_demo/test/tests.c_demo.tests.yaml @@ -2,4 +2,4 @@ description: This is a unit test suite for the c_demo component. tests: - name: Test_C - description: This unit test excersizes the c_demo component and makes sure it works correctly. + description: This unit test exercises the c_demo component and makes sure it works correctly. diff --git a/src/components/counter/counter_action/counter_action.ads b/src/components/counter/counter_action/counter_action.ads index 39dc7b1..121a24d 100644 --- a/src/components/counter/counter_action/counter_action.ads +++ b/src/components/counter/counter_action/counter_action.ads @@ -1,4 +1,4 @@ --- An action to perfrom when the count is +-- An action to perform when the count is -- updated. with Interfaces; use Interfaces; package Counter_Action is diff --git a/src/components/counter/test/component-counter-implementation-tester.ads b/src/components/counter/test/component-counter-implementation-tester.ads index 06c603f..1870b57 100644 --- a/src/components/counter/test/component-counter-implementation-tester.ads +++ b/src/components/counter/test/component-counter-implementation-tester.ads @@ -126,7 +126,7 @@ package Component.Counter.Implementation.Tester is not overriding function Dispatch_N (Self : in out Instance; N : in Positive := 1) return Natural; --------------------------------------- - -- Auxillery test functions: + -- Auxiliary test functions: --------------------------------------- function Check_Count (Self : in Instance; Value : in Unsigned_32) return Boolean; diff --git a/src/components/counter/test/tests-implementation.adb b/src/components/counter/test/tests-implementation.adb index a4fdc04..990fa22 100644 --- a/src/components/counter/test/tests-implementation.adb +++ b/src/components/counter/test/tests-implementation.adb @@ -39,7 +39,7 @@ package body Tests.Implementation is -- Tests: ------------------------------------------------------------------------- - -- This unit test excersizes the counter component and makes sure it, well, counts! + -- This unit test exercises the counter component and makes sure it, well, counts! overriding procedure Test_1 (Self : in out Instance) is Value : Packed_U32.T; begin @@ -64,7 +64,7 @@ package body Tests.Implementation is -- This unit test tests all the commands for the counter component overriding procedure Test_Commands (Self : in out Instance) is - -- Helper function which sends arbitraty numbers times. + -- Helper function which sends arbitrary numbers times. procedure Go is begin Self.Tester.Tick_T_Send ((Time => (1, 1), Count => 1)); diff --git a/src/components/counter/test/tests-implementation.ads b/src/components/counter/test/tests-implementation.ads index 5274d44..9446f1b 100644 --- a/src/components/counter/test/tests-implementation.ads +++ b/src/components/counter/test/tests-implementation.ads @@ -14,7 +14,7 @@ private overriding procedure Set_Up_Test (Self : in out Instance); overriding procedure Tear_Down_Test (Self : in out Instance); - -- This unit test excersizes the counter component and makes sure it, well, counts! + -- This unit test exercises the counter component and makes sure it, well, counts! overriding procedure Test_1 (Self : in out Instance); -- This unit test tests all the commands for the counter component overriding procedure Test_Commands (Self : in out Instance); diff --git a/src/components/counter/test/tests.counter.tests.yaml b/src/components/counter/test/tests.counter.tests.yaml index bef9ac7..5d89ad0 100644 --- a/src/components/counter/test/tests.counter.tests.yaml +++ b/src/components/counter/test/tests.counter.tests.yaml @@ -2,6 +2,6 @@ description: This is a unit test suite for the counter component tests: - name: Test_1 - description: This unit test excersizes the counter component and makes sure it, well, counts! + description: This unit test exercises the counter component and makes sure it, well, counts! - name: Test_Commands description: This unit test tests all the commands for the counter component diff --git a/src/components/cpp_demo/test/tests-implementation.adb b/src/components/cpp_demo/test/tests-implementation.adb index 04d3eb4..511a56b 100644 --- a/src/components/cpp_demo/test/tests-implementation.adb +++ b/src/components/cpp_demo/test/tests-implementation.adb @@ -36,7 +36,7 @@ package body Tests.Implementation is -- Tests: ------------------------------------------------------------------------- - -- This unit test excersizes the c_demo component and makes sure it works + -- This unit test exercises the c_demo component and makes sure it works -- correctly. overriding procedure Test_Cpp (Self : in out Instance) is T : Component.Cpp_Demo.Implementation.Tester.Instance_Access renames Self.Tester; diff --git a/src/components/cpp_demo/test/tests-implementation.ads b/src/components/cpp_demo/test/tests-implementation.ads index e47a4cf..74f2337 100644 --- a/src/components/cpp_demo/test/tests-implementation.ads +++ b/src/components/cpp_demo/test/tests-implementation.ads @@ -14,7 +14,7 @@ private overriding procedure Set_Up_Test (Self : in out Instance); overriding procedure Tear_Down_Test (Self : in out Instance); - -- This unit test excersizes the c_demo component and makes sure it works + -- This unit test exercises the c_demo component and makes sure it works -- correctly. overriding procedure Test_Cpp (Self : in out Instance); diff --git a/src/components/cpp_demo/test/tests.cpp_demo.tests.yaml b/src/components/cpp_demo/test/tests.cpp_demo.tests.yaml index c783931..146725b 100644 --- a/src/components/cpp_demo/test/tests.cpp_demo.tests.yaml +++ b/src/components/cpp_demo/test/tests.cpp_demo.tests.yaml @@ -2,4 +2,4 @@ description: This is a unit test suite for the cpp_demo component. tests: - name: Test_Cpp - description: This unit test excersizes the cpp_demo component and makes sure it works correctly. + description: This unit test exercises the cpp_demo component and makes sure it works correctly. diff --git a/src/components/oscillator/test/oscillator.tests.yaml b/src/components/oscillator/test/oscillator.tests.yaml index 7f233ce..5b76fb3 100644 --- a/src/components/oscillator/test/oscillator.tests.yaml +++ b/src/components/oscillator/test/oscillator.tests.yaml @@ -2,4 +2,4 @@ description: This is a unit test suite for the oscillator component tests: - name: Test_Parameters - description: This unit test excersizes the parameters within the component + description: This unit test exercises the parameters within the component diff --git a/src/components/oscillator/test/oscillator_tests-implementation.adb b/src/components/oscillator/test/oscillator_tests-implementation.adb index 1a4c73a..899d9c8 100644 --- a/src/components/oscillator/test/oscillator_tests-implementation.adb +++ b/src/components/oscillator/test/oscillator_tests-implementation.adb @@ -35,7 +35,7 @@ package body Oscillator_Tests.Implementation is -- Tests: ------------------------------------------------------------------------- - -- This unit test excersizes the parameters within the component + -- This unit test exercises the parameters within the component overriding procedure Test_Parameters (Self : in out Instance) is T : Component.Oscillator.Implementation.Tester.Instance_Access renames Self.Tester; diff --git a/src/components/oscillator/test/oscillator_tests-implementation.ads b/src/components/oscillator/test/oscillator_tests-implementation.ads index dcd1ed9..a1fcf26 100644 --- a/src/components/oscillator/test/oscillator_tests-implementation.ads +++ b/src/components/oscillator/test/oscillator_tests-implementation.ads @@ -14,7 +14,7 @@ private overriding procedure Set_Up_Test (Self : in out Instance); overriding procedure Tear_Down_Test (Self : in out Instance); - -- This unit test excersizes the parameters within the component + -- This unit test exercises the parameters within the component overriding procedure Test_Parameters (Self : in out Instance); -- Test data and state: diff --git a/src/components/parameter_manager/component-parameter_manager-implementation.ads b/src/components/parameter_manager/component-parameter_manager-implementation.ads index cba4ea7..9965082 100644 --- a/src/components/parameter_manager/component-parameter_manager-implementation.ads +++ b/src/components/parameter_manager/component-parameter_manager-implementation.ads @@ -44,7 +44,7 @@ private Parameter_Table_Length : Natural := 0; -- Temporary storage to allow safe copying between Default and Working. -- We declare this here, instead of as a temporary variable within a function - -- because if a timeout error occurs, we have no gaurantee that the downstream + -- because if a timeout error occurs, we have no guarantee that the downstream -- component is not reading/writing from this data. If it is declared here, then -- at least only this data can be corrupted, and not the stack, which would be -- a much worse situation. The assembly should be designed that timeout errors diff --git a/src/components/parameter_manager/parameter_manager.events.yaml b/src/components/parameter_manager/parameter_manager.events.yaml index 973a9d2..81457d5 100644 --- a/src/components/parameter_manager/parameter_manager.events.yaml +++ b/src/components/parameter_manager/parameter_manager.events.yaml @@ -11,7 +11,7 @@ events: description: A command was received with invalid parameters. param_type: Invalid_Command_Info.T - name: Parameter_Table_Copy_Timeout - description: A timeout occured while waiting for a parameter table copy operation to complete. + description: A timeout occurred while waiting for a parameter table copy operation to complete. - name: Parameter_Table_Copy_Failure description: A parameter table copy failed. param_type: Parameters_Memory_Region_Release.T diff --git a/src/components/parameter_manager/test/component-parameter_manager-implementation-tester.adb b/src/components/parameter_manager/test/component-parameter_manager-implementation-tester.adb index df664f0..14b1cc0 100644 --- a/src/components/parameter_manager/test/component-parameter_manager-implementation-tester.adb +++ b/src/components/parameter_manager/test/component-parameter_manager-implementation-tester.adb @@ -173,7 +173,7 @@ package body Component.Parameter_Manager.Implementation.Tester is Self.Invalid_Command_Received_History.Push (Arg); end Invalid_Command_Received; - -- A timeout occured while waiting for a parameter table copy operation to complete. + -- A timeout occurred while waiting for a parameter table copy operation to complete. overriding procedure Parameter_Table_Copy_Timeout (Self : in out Instance) is Arg : constant Natural := 0; begin diff --git a/src/components/parameter_manager/test/component-parameter_manager-implementation-tester.ads b/src/components/parameter_manager/test/component-parameter_manager-implementation-tester.ads index 10c430c..4b19e2d 100644 --- a/src/components/parameter_manager/test/component-parameter_manager-implementation-tester.ads +++ b/src/components/parameter_manager/test/component-parameter_manager-implementation-tester.ads @@ -102,7 +102,7 @@ package Component.Parameter_Manager.Implementation.Tester is overriding procedure Finished_Parameter_Table_Copy (Self : in out Instance; Arg : in Packed_Parameter_Table_Copy_Type.T); -- A command was received with invalid parameters. overriding procedure Invalid_Command_Received (Self : in out Instance; Arg : in Invalid_Command_Info.T); - -- A timeout occured while waiting for a parameter table copy operation to complete. + -- A timeout occurred while waiting for a parameter table copy operation to complete. overriding procedure Parameter_Table_Copy_Timeout (Self : in out Instance); -- A parameter table copy failed. overriding procedure Parameter_Table_Copy_Failure (Self : in out Instance; Arg : in Parameters_Memory_Region_Release.T); diff --git a/src/components/parameter_manager/test/parameter_manager_tests-implementation.adb b/src/components/parameter_manager/test/parameter_manager_tests-implementation.adb index 40c7f5b..e25cb69 100644 --- a/src/components/parameter_manager/test/parameter_manager_tests-implementation.adb +++ b/src/components/parameter_manager/test/parameter_manager_tests-implementation.adb @@ -142,7 +142,7 @@ package body Parameter_Manager_Tests.Implementation is Task_Send_Response_Twice := True; Natural_Assert.Eq (T.Dispatch_All, 1); - -- Copy to working should have occured now. Check data: + -- Copy to working should have occurred now. Check data: Natural_Assert.Eq (T.Default_Parameters_Memory_Region_Recv_Sync_History.Get_Count, 1); Parameters_Memory_Region_Assert.Eq ( T.Default_Parameters_Memory_Region_Recv_Sync_History.Get (1), @@ -190,7 +190,7 @@ package body Parameter_Manager_Tests.Implementation is Task_Send_Response_Twice := True; Natural_Assert.Eq (T.Dispatch_All, 1); - -- Copy to working should have occured now. Check data: + -- Copy to working should have occurred now. Check data: Natural_Assert.Eq (T.Working_Parameters_Memory_Region_Recv_Sync_History.Get_Count, 1); Parameters_Memory_Region_Assert.Eq ( T.Working_Parameters_Memory_Region_Recv_Sync_History.Get (1), @@ -241,7 +241,7 @@ package body Parameter_Manager_Tests.Implementation is Task_Send_Response := True; Natural_Assert.Eq (T.Dispatch_All, 1); - -- Copy from working should have occured now. Check data: + -- Copy from working should have occurred now. Check data: Natural_Assert.Eq (T.Working_Parameters_Memory_Region_Recv_Sync_History.Get_Count, 1); Parameters_Memory_Region_Assert.Eq ( T.Working_Parameters_Memory_Region_Recv_Sync_History.Get (1), @@ -276,7 +276,7 @@ package body Parameter_Manager_Tests.Implementation is Task_Send_Response_Twice := True; Natural_Assert.Eq (T.Dispatch_All, 1); - -- Copy from working should have occured now. Check data: + -- Copy from working should have occurred now. Check data: Natural_Assert.Eq (T.Working_Parameters_Memory_Region_Recv_Sync_History.Get_Count, 2); Parameters_Memory_Region_Assert.Eq ( T.Working_Parameters_Memory_Region_Recv_Sync_History.Get (2), @@ -315,7 +315,7 @@ package body Parameter_Manager_Tests.Implementation is Task_Send_Response_Twice := True; Natural_Assert.Eq (T.Dispatch_All, 1); - -- Copy from working should have occured now. Check data: + -- Copy from working should have occurred now. Check data: Natural_Assert.Eq (T.Default_Parameters_Memory_Region_Recv_Sync_History.Get_Count, 2); Parameters_Memory_Region_Assert.Eq ( T.Default_Parameters_Memory_Region_Recv_Sync_History.Get (2), @@ -354,7 +354,7 @@ package body Parameter_Manager_Tests.Implementation is Task_Send_Response := True; Natural_Assert.Eq (T.Dispatch_All, 1); - -- Copy from working should have occured now. Check data: + -- Copy from working should have occurred now. Check data: Natural_Assert.Eq (T.Default_Parameters_Memory_Region_Recv_Sync_History.Get_Count, 3); Parameters_Memory_Region_Assert.Eq ( T.Default_Parameters_Memory_Region_Recv_Sync_History.Get (3), @@ -394,7 +394,7 @@ package body Parameter_Manager_Tests.Implementation is Task_Send_Timeout := True; Natural_Assert.Eq (T.Dispatch_All, 1); - -- Copy from working should have occured now. Check data: + -- Copy from working should have occurred now. Check data: Natural_Assert.Eq (T.Working_Parameters_Memory_Region_Recv_Sync_History.Get_Count, 1); Parameters_Memory_Region_Assert.Eq ( T.Working_Parameters_Memory_Region_Recv_Sync_History.Get (1), @@ -423,7 +423,7 @@ package body Parameter_Manager_Tests.Implementation is Task_Send_Timeout := True; Natural_Assert.Eq (T.Dispatch_All, 1); - -- Copy from working should have occured now. Check data: + -- Copy from working should have occurred now. Check data: Natural_Assert.Eq (T.Working_Parameters_Memory_Region_Recv_Sync_History.Get_Count, 1); -- No copy to default: Natural_Assert.Eq (T.Default_Parameters_Memory_Region_Recv_Sync_History.Get_Count, 1); diff --git a/src/pico_util/adc/main.adb b/src/pico_util/adc/main.adb index 2238983..4113e3a 100644 --- a/src/pico_util/adc/main.adb +++ b/src/pico_util/adc/main.adb @@ -20,7 +20,7 @@ begin -- The Pico's power regulator dynamically adjusts it's switching frequency -- based on load. This introduces noise that can affect ADC readings. The -- Pico datasheet recommends setting Power Save pin high while performing - -- ADC measurements to minimize this noise, at tne expense of higher power + -- ADC measurements to minimize this noise, at the expense of higher power -- consumption. Pico.SMPS_PS.Configure (Output, Pull_Up); Pico.SMPS_PS.Clear; From f4d14bb305418219e1a46035b1f6841099dc2a89 Mon Sep 17 00:00:00 2001 From: Kevin Dinkel <1225857+dinkelk@users.noreply.github.com> Date: Thu, 21 Dec 2023 12:04:27 -0700 Subject: [PATCH 2/2] fixing actions for style and test --- .github/workflows/style_all.yml | 3 ++- .github/workflows/test_all.yml | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/style_all.yml b/.github/workflows/style_all.yml index ad2e9e9..b040071 100644 --- a/.github/workflows/style_all.yml +++ b/.github/workflows/style_all.yml @@ -39,11 +39,12 @@ jobs: working-directory: ${{ env.EXAMPLE_DIR }} - name: Check all style run: bash adamant_example/docker/env/github_run.sh "redo adamant_example/style_all" - continue-on-error: true - name: Archive logs for failed style checks + if: always() uses: actions/upload-artifact@v3 with: name: failed_style_logs path: adamant_example/build/failed_style_logs if-no-files-found: ignore - run: echo "Finished with status - ${{ job.status }}." + if: always() diff --git a/.github/workflows/test_all.yml b/.github/workflows/test_all.yml index 5fa55a4..b31da23 100644 --- a/.github/workflows/test_all.yml +++ b/.github/workflows/test_all.yml @@ -39,11 +39,12 @@ jobs: working-directory: ${{ env.EXAMPLE_DIR }} - name: Run all unit tests run: bash adamant_example/docker/env/github_run.sh "redo adamant_example/test_all" - continue-on-error: true - name: Archive logs for failed unit tests + if: always() uses: actions/upload-artifact@v3 with: name: failed_test_logs path: adamant_example/build/failed_test_logs if-no-files-found: ignore - run: echo "Finished with status - ${{ job.status }}." + if: always()