How to build opensearch + dashboard with all plugins from source

Hi,

How to build opensearch + dashboard with all plugins from source now? I see Building OpenSearch 1.1 Distributions using Automation · OpenSearch, but nothing about build environment (OS + dependencies) or build docker image - so help me please where to know about that

Found opensearch-build/ci-runner.centos7.dockerfile at opensearch-1.1.0 · opensearch-project/opensearch-build · GitHub which looks like build environment, but maven 3.8.2 is already unaccessible, so using 3.8.3 to build …

Build stage completed successfully, but assemble stage failed:

$ ./bundle-workflow/assemble.sh manifests/1.1.0/opensearch-1.1.0.yml 
Installing dependencies in ./bundle-workflow ...
Installing dependencies from Pipfile.lock (22bd6c)...
  🐍   ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 0/0 — 00:00:00
To activate this project's virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.
Running ./bundle-workflow/src/run_assemble.py manifests/1.1.0/opensearch-1.1.0.yml ...
Traceback (most recent call last):
  File "/usr/share/opensearch/build-opensearch/bundle-workflow/src/run_assemble.py", line 88, in <module>
    sys.exit(main())
  File "/usr/share/opensearch/build-opensearch/bundle-workflow/src/run_assemble.py", line 50, in main
    build_manifest = BuildManifest.from_file(args.manifest)
  File "/usr/share/opensearch/build-opensearch/bundle-workflow/src/manifests/manifest.py", line 20, in from_file
    return cls(yaml.safe_load(file))
  File "/usr/share/opensearch/build-opensearch/bundle-workflow/src/manifests/build_manifest.py", line 83, in __init__
    super().__init__(data)
  File "/usr/share/opensearch/build-opensearch/bundle-workflow/src/manifests/manifest.py", line 51, in __init__
    self.validate(data)
  File "/usr/share/opensearch/build-opensearch/bundle-workflow/src/manifests/manifest.py", line 61, in validate
    raise ValueError(f"Invalid manifest schema: {v.errors}")
ValueError: Invalid manifest schema: {'build': [{'architecture': ['required field'], 'id': ['required field']}], 'components': [{0: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field']}], 1: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field']}], 2: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field']}], 3: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field']}], 4: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field']}], 5: [{'commit_id': ['required field'], 'version': ['required field']}], 6: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field']}], 7: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field']}], 8: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field']}], 9: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field']}], 10: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field']}], 11: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field']}], 12: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field']}], 13: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field'], 'working_directory': ['unknown field']}], 14: [{'checks': ['unknown field'], 'commit_id': ['required field'], 'version': ['required field'], 'working_directory': ['unknown field']}]}]}

Any idea how to fix this?

I need to use artifacts/manifest.yml instead of manifests/1.1.0/opensearch-1.1.0.yml to assemble