Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add artifactory_catalog_connector #99

Merged
merged 10 commits into from
Jul 20, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions component-catalog-connectors/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ Component catalog connectors provide Elyra's Visual Pipeline Editor access to [l
This directory contains component catalog connector implementations for
- [Kubeflow Pipelines example components](kfp-example-components-connector)
- [Apache Airflow example operators](airflow-example-components-connector)
- [Artifactory](artifactory-connector)
- [Machine Learning Exchange](mlx-connector)

The connectors listed above are maintained by the Elyra community. You can find a complete list of available connectors on [this page](connector-directory.md) or learn how to [build your own](build-a-custom-connector.md).
30 changes: 30 additions & 0 deletions component-catalog-connectors/artifactory-connector/.flake8
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
[flake8]
# References:
# https://flake8.readthedocs.io/en/latest/user/configuration.html
# https://flake8.readthedocs.io/en/latest/user/error-codes.html
# https://docs.openstack.org/hacking/latest/user/hacking.html
exclude =
__init__.py
ignore =
# Import formatting
E4,
# Comparing types instead of isinstance
E721,
# Assigning lambda expression
E731,
# Ambiguous variable names
E741,
# Allow breaks after binary operators
W504,
# Include name with TODOs as in # TODO(yourname)
H101,
# Do not import more than one module per line
H301,
# Alphabetically order imports by the full module path
H306,
# Multi line docstrings should start without a leading new line
H404,
# Multi line docstrings should start with a one line summary followed by an empty line
H405
max-line-length = 120

38 changes: 38 additions & 0 deletions component-catalog-connectors/artifactory-connector/MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
#
# Copyright 2018-2022 Elyra Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

# exclude from ANY directory
global-exclude *.ipynb
global-exclude *.py[cod]
global-exclude __pycache__
global-exclude .git
global-exclude .ipynb_checkpoints
global-exclude .DS_Store
global-exclude *.sh
global-exclude docs
global-exclude tests

# explicit includes
include CONTRIBUTING.md
include README.md
include LICENSE
include dist/*.tgz

recursive-exclude * __pycache__
recursive-exclude * *.py[co]

# include the connector schema file
include artifactory_catalog_connector/artifactory-catalog.json
57 changes: 57 additions & 0 deletions component-catalog-connectors/artifactory-connector/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
#
# Copyright 2021-2022 Elyra Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

.PHONY: help clean lint test-dependencies source-install install dist
.PHONY: publish test-publish test

SHELL:=/bin/bash

PACKAGE_NAME=elyra-artifactory-catalog-connector
PACKAGE_PATH=artifactory_catalog_connector

help:
# http://marmelab.com/blog/2016/02/29/auto-documented-makefile.html
@grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'

clean:
rm -rf dist/
rm -rf build/
rm -rf *.egg-info
- pip uninstall -y $(PACKAGE_NAME)

test-dependencies:
@pip install -q -r test_requirements.txt

lint: test-dependencies
flake8 $(PACKAGE_PATH)

dist: clean lint ## Build distribution
python setup.py bdist_wheel sdist

source-install: dist ## Install component connector package from source
pip install .

install: ## Install component connector package from PyPI
pip install $(PACKAGE_NAME)

test: source-install ## Run automated tests
pytest tests/

test-publish: dist ## Upload package to test PyPI
twine upload --repository testpypi dist/*

publish: dist ## Upload package to PyPI
twine upload dist/*
Loading