Releases: neuro-inc/apolo-flow
24.8.0
24.7.0
No significant changes.
Neuro Flow 24.2.0 (2024-02-16)
Features
-
${{ project.project_name }}
now also configuresvolume
's remote path andimage
reference if the project name was not set.If you do not have
project_name
set inproject.yaml
, the volume paths are assumed within your current project configured in CLI.
However, if you setproject_name
, this project will be assumed while managing jobs, bakes, volumes, building images etc. within this flow. (#1081) -
Added support of extra Kaniko arguments while building an image:
images: image_a: ref: image:imagea context: dir dockerfile: dir/Dockerfile extra_kaniko_args: >- --reproducible --cache-ttl=1h --single-snapshot
More details on available arguments could be found in official Kaniko documentation. (#1110)
Neuro Flow 23.11.0 (2023-11-15)
Features
-
${{ project.project_name }}
now also configuresvolume
's remote path andimage
reference if the project name was not set.If you do not have
project_name
set inproject.yaml
, the volume paths are assumed within your current project configured in CLI.
However, if you setproject_name
, this project will be assumed while managing jobs, bakes, volumes, building images etc. within this flow. (#1081) -
Add retries for read-only operations on Server Unavailable error. (#1085)
Neuro Flow 23.10.2 (2023-10-18)
Bugfixes
- Fix read retries from neuro APIs. Fix configuration of executor lifespan in bake config file, example:
kind: batch life_span: 30d tasks: ... ``` (#1075)
Neuro Flow 23.10.1 (2023-10-15)
Features
- Expose jobs and tasks restart policy configuration (#1072)
Neuro Flow 23.7.0 (2023-07-07)
Features
- Dropped Python 3.7, added 3.10, 3.11 support. (#980)
- Host neuro-flow flows (former projects) within user projects. (#1002)
Misc
Neuro Flow 22.8.1 (2022-08-05)
==============================
Features
- Added
hash_files_relative
function to expression, it works same ashash_files
but requires additional leading
parameters that defines directory to glob over. It can be used to glob over action files:${{ hash_files_relative(flow.action_path, "**/pattern/here/**/*.py", "other/**/pattern") ``` (#904)
Neuro Flow 22.8.0 (2022-08-04)
Features
- Added support of
flow.action_path
for images sections of action. (#902)
Neuro Flow 22.7.2 (2022-07-28)
Features
- Implement
flow.action_path
property in the flow context. It is available from action and points to the folder whereaction.yml
file is located. (#896) - Replace HTTP fetch with git clone for remote actions. (#897)
Neuro Flow 22.7.1 (2022-07-25)
Bugfixes
- Use a separate src folder to don install tests when installing neuro-flow. (#891)
Neuro Flow 22.7.0 (2022-07-25)
Features
- Implement
neuro-flow init
command for easy flow creation (#859)
Neuro Flow 22.6.0 (2022-06-07)
Features
- Add support of shared server side projects. (#840)
- Display times with timezones in log messages. (#847)
Neuro Flow 22.4.3 (2022-04-21)
Bugfixes
- Fixed error when trying to build image in batch mode (#818)
Neuro Flow 22.4.2 (2022-04-01)
No significant changes.
Neuro Flow 22.3.0 (2022-03-29)
Bugfixes
- Fixed problem with click 8.1.0
Neuro Flow 22.1.0 (2022-01-26)
Features
-
Support ${{ matrix.ORDINAL }} as unique 0-based index for selected rows.
If a batch flow has a matrix, all matrix rows are enumerated.
The ordinal number of each row is available as${{ matrix.ORDINAL }}
system value. (#693) -
Add support of expressions in matrix definition.
You can now use expression to define list of matrix products. In examples here and below,
bothold_way_key
andnew_way_key
produce same list of values:matrix: old_way_key: ["1", "2", "3"] new_way_key: ${{ ["1", "2", "3"] }}
This can be helpful when used together with new
range()
function:matrix: old_way_key: [0, 1, 2, 3] new_way_key: ${{ range(4) }}
The
range()
function supports same parameters as python'srange()
, but it returns list.
For example:${{ range(1, 4) }}
generates[1,2,3]
, and${{ range(4, 1, -1) }}
generates
[4,3,2]
.As sometimes plain numbers is not best options for matrix products, you can use list comprehension
to perform some mapping:matrix: old_way_key: ["k1", "k2", "k3"] new_way_key: ${{ [fmt("k{}", str(it)) for it in range(1, 4)] }}
You can also filter some values in comprehension same way as in python:
matrix: old_way_key: [0, 4, 16] new_way_key: ${{ [it * it for it in range(1, 5) if it % 2 == 0] }} ``` (#741)
Bugfixes
- Fixed (disabled) uploads to storage in dry-run mode (#732)
Neuro Flow 21.11.2 (2021-11-26)
Features
- Technical release, compatible with the latest SDK/CLI.
Neuro Flow 21.11.0 (2021-11-23)
Features
- Allow
bash
andpython
code blocks in local actions. (#667) - Add
-s/--suffix
option usage hint for cases when the live job launched without it. (#679)
Bugfixes
- Handle cached image status color in
neuro-flow inspect <bake>
. (#657) - Fixed parsing of bash and python in mixins (#674)
- Fix parsing of 'bash' and 'python' usage in project config. (#678)
- Fixed logging of filename as "." for github actions. (#681)
Neuro Flow 21.10.0 (2021-10-27)
Features
-
Added new context called git. It has following attributes:
- ${{ git.sha }} -- SHA of current commit
- ${{ git.branch }} - name of current branch
- ${{ git.tags }} - list of tags that point to current commit
This context is available everywhere both in live and batch mode, but it can only be used
if project's workspace is inside some git repository. (#603) -
Added ternary operator to expressions:
${{ left if condition else right }}
will evaluate toleft
ifcondition
is True and toright
otherwise. (#605) -
Allowed ']]' and '}}' in yaml literal strings. (#607)
-
Added column with batch name to output of
neuro-flow bakes
. (#618) -
Enabled detailed automatic logging to file. For locally executed commands, logs will
go to~/.neuro/logs
directory. Remote executor detailed logs will go tostorage:.flow/logs/<bake_id>/
. (#622) -
Added support of non-string types for action inputs. Now, one can specify action input in following way:
inputs: arg1: descr: Input with implicit string type arg2: descr: Input with explicit string type type: str arg2: descr: Input with explicit int type and corresponding default type: int default: 42
Supported types are
int
,float
,bool
,str
. On action calls side, it's now possible to use
corresponding yaml types as arguments. (#626) -
Added possibility to specify job/bake params via the shortcut
-p
for--param
. (#629)
Neuro Flow 21.9 (2021-09-29)
Features
- Renamed
inherits
yaml property tomixins
. (#560) - Added support project level
mixins
. Mixins defined inproject.yml
available both for live and batch configurations,
so they cannot define any live or batch specific properties. (#562) - Added command
neuro-flow delete-project <project-id>
that allows complete removal of project. (#581)
Bugfixes
- Fix crash with global images in batch mode. (#544)
Misc
Neuro Flow 21.7.9 (2021-07-09)
Features
- Added new sections
defaults
,images
,volumes
to theproject.yml
file. The work the same as the do inlive
/batch
except they are global -- everything defined inproject.yml
applies to all workflows. (#506)
Neuro Flow 21.7.7 (2021-7-7)
Features
-
Added modules feature: a module is simillar to action but has following differneces:
- only local files support (
ws:
scheme), github located modules are forbidden. - the module content has access to workflow global defaults. The default env/volumes/preset
is inherited, and expressions can access top level contexts such asflow
.
Calling a module is similar to calling an action, except for use of
module
property
instead ofaction
property:Live module call:
jobs: test: module: ws:live-module args: arg1: val 1
Batch module call:
tasks: - id: test module: ws:batch-module args: arg1: val 1 ``` (#464)
- only local files support (
-
Add support of mixins in live and batch mode.
Mixins allow to define and reuse some common parts of jobs in live mode and tasks in batch mode.
To define a mixin, use top levelmixins
sections:... mixins: credentials: volumes: - secret:some_key:/var/some_key env: KEY_LOCATION: /var/some_key ...
Mixins can define the same properties as "job" and "task" do, except for "id" field in batch mode.
To apply a mixin, useinherits
property:... jobs: test_a: inherits: [ credentials ] ...
When applied, all fields defined in mixin will be merged into job definition.
You can apply multiple mixins simultaneously. If some of applied mixins share the same property,
or/and it is define...
24.2.0
Features
-
${{ project.project_name }}
now also configuresvolume
's remote path andimage
reference if the project name was not set.If you do not have
project_name
set inproject.yaml
, the volume paths are assumed within your current project configured in CLI.
However, if you setproject_name
, this project will be assumed while managing jobs, bakes, volumes, building images etc. within this flow. (#1081) -
Added support of extra Kaniko arguments while building an image:
images: image_a: ref: image:imagea context: dir dockerfile: dir/Dockerfile extra_kaniko_args: >- --reproducible --cache-ttl=1h --single-snapshot
More details on available arguments could be found in official Kaniko documentation. (#1110)
23.11.0
Features
-
${{ project.project_name }}
now also configuresvolume
's remote path andimage
reference if the project name was not set.If you do not have
project_name
set inproject.yaml
, the volume paths are assumed within your current project configured in CLI.
However, if you setproject_name
, this project will be assumed while managing jobs, bakes, volumes, building images etc. within this flow. (#1081) -
Add retries for read-only operations on Server Unavailable error. (#1085)
23.10.2
Bugfixes
- Fix read retries from neuro APIs. Fix configuration of executor lifespan in bake config file, example:
kind: batch life_span: 30d tasks: ... ``` (#1075)
23.10.1
23.7.0
22.8.1
Features
- Added
hash_files_relative
function to expression, it works same ashash_files
but requires additional leading
parameters that defines directory to glob over. It can be used to glob over action files:${{ hash_files_relative(flow.action_path, "**/pattern/here/**/*.py", "other/**/pattern") ``` (#904)