# Copyright 2020-present Open Networking Foundation
#
# SPDX-License-Identifier: Apache-2.0
# SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0

# lockfiles for requirements.yaml for dependent charts
requirements.lock

# ignore dependent chart dirs
charts
Chart.lock

# ignore MacOS DS_Store
*.DS_Store
