path.py 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. #
  2. # Copyright 2018-2022 Elyra Authors
  3. #
  4. # Licensed under the Apache License, Version 2.0 (the "License");
  5. # you may not use this file except in compliance with the License.
  6. # You may obtain a copy of the License at
  7. #
  8. # http://www.apache.org/licenses/LICENSE-2.0
  9. #
  10. # Unless required by applicable law or agreed to in writing, software
  11. # distributed under the License is distributed on an "AS IS" BASIS,
  12. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. # See the License for the specific language governing permissions and
  14. # limitations under the License.
  15. """Path utilities"""
  16. import os
  17. def get_absolute_path(root_dir: str, path: str) -> str:
  18. """Checks if path is absolute or not. If not absolute, `path` is appended to `root_dir`."""
  19. absolute_path = os.path.normpath(path)
  20. if not os.path.isabs(absolute_path):
  21. absolute_path = os.path.join(os.path.normpath(root_dir), absolute_path)
  22. return absolute_path
  23. def get_expanded_path(root_dir: str = None) -> str:
  24. # Since root_dir may contain '~' for user home, use expanduser()
  25. return os.path.expanduser(root_dir or os.getcwd())