Skip to content

Releases: neuro-inc/apolo-flow

24.8.0

10 Aug 07:24
a100a3f
Compare
Choose a tag to compare

No significant changes.

24.7.0

26 Jul 18:50
Compare
Choose a tag to compare

No significant changes.

Neuro Flow 24.2.0 (2024-02-16)

Features

  • ${{ project.project_name }} now also configures volume's remote path and image reference if the project name was not set.

    If you do not have project_name set in project.yaml, the volume paths are assumed within your current project configured in CLI.
    However, if you set project_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 configures volume's remote path and image reference if the project name was not set.

    If you do not have project_name set in project.yaml, the volume paths are assumed within your current project configured in CLI.
    However, if you set project_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 as hash_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 where action.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,
    both old_way_key and new_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's range(), 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 and python 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 to left
    if condition is True and to right 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 to storage:.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 to mixins. (#560)
  • Added support project level mixins. Mixins defined in project.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 the project.yml file. The work the same as the do in live/batch except they are global -- everything defined in project.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 as flow.

    Calling a module is similar to calling an action, except for use of module property
    instead of action 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)
    
    
  • 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 level mixins 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, use inherits 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...

Read more

24.2.0

16 Feb 11:16
Compare
Choose a tag to compare

Features

  • ${{ project.project_name }} now also configures volume's remote path and image reference if the project name was not set.

    If you do not have project_name set in project.yaml, the volume paths are assumed within your current project configured in CLI.
    However, if you set project_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

14 Nov 22:55
Compare
Choose a tag to compare

Features

  • ${{ project.project_name }} now also configures volume's remote path and image reference if the project name was not set.

    If you do not have project_name set in project.yaml, the volume paths are assumed within your current project configured in CLI.
    However, if you set project_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

18 Oct 09:11
Compare
Choose a tag to compare

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

15 Oct 21:30
Compare
Choose a tag to compare

Features

  • Expose jobs and tasks restart policy configuration (#1072)

23.7.0

06 Jul 23:06
Compare
Choose a tag to compare

Features

  • Dropped Python 3.7, added 3.10, 3.11 support. (#980)
  • Host neuro-flow flows (former projects) within user projects. (#1002)

Misc

22.8.1

05 Aug 10:17
Compare
Choose a tag to compare

Features

  • Added hash_files_relative function to expression, it works same as hash_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)
    

22.8.0

04 Aug 19:50
Compare
Choose a tag to compare

Features

  • Added support of flow.action_path for images sections of action. (#902)

22.7.2

28 Jul 15:22
20c7680
Compare
Choose a tag to compare

Features

  • Implement flow.action_path property in the flow context. It is available from action and points to the folder where action.yml file is located. (#896)
  • Replace HTTP fetch with git clone for remote actions. (#897)