Commit Graph

38 Commits (c5fdabdb26c99ca4ed2aa153e755d0701b0c18db)

Author SHA1 Message Date
Toshio Kuratomi 2cddb093f5 Add AnsibleList for keeping track of line numbers in lists parsed from yaml 10 years ago
James Cammarata 0603b9c62c Merge branch 'v2_fixing' into devel
Conflicts:
	v2/ansible/playbook/helpers.py
10 years ago
James Cammarata 785c0c0c8c V2 fixing bugs 10 years ago
Toshio Kuratomi 69cf95bd0e Add __init__ to the yaml test dir 10 years ago
Toshio Kuratomi e697de6076 Move AnsibleBaseBaseYAMLObject's position_info into a property 10 years ago
Toshio Kuratomi 05f1bed12b Use the node's start_mark to determine line and column.
* Elminates a lot of logic in the AnsibleComposer class.
* Update tests with new column offsets.  The rule should now be
  consistently: Column is the start of the entry's value (so for
  strings, the first non-space after the entry beginning, for dicts, the
  first character of the first key)
10 years ago
Toshio Kuratomi b152275a36 Test line numbers and "fix" a bug in the scalar line counting 10 years ago
Toshio Kuratomi c41b917162 Add a yaml constructor for unicode strings:
* Changes AnsibleConstructor so that only unicode strings are returned
  (no str type)
* Tracks line, column numbers for strings
* Adds unittests for AnsibleLoader (generic for all the yaml parsing)
10 years ago
Toshio Kuratomi 43c1a97447 Various unicode and backslash escape cleanups
* Do backslash escape parsing in parse_kv() [was being done in the copy
  module purely for newlines in the copy module's content param before]
* Make parse_kv always return unicode
* Add bandaid to transform args to unicode until we can fix things
  calling parse_kv to always send it unicode.
* Make split_args deal with unicode internally.  Warning, no bandaid for
  things calling split_args without giving it unicode (shouldn't matter
  as dealt with str internally before)
* Fix copy and unarchive action plugins to not use setdefaultencoding
* Remove escaping from copy (it was broken and made content into latin-1
  sometimes). escaping is now in parse_kv.
* Expect that content is now a unicode string so transform to bytes just
  before writing to the file.
* Add initial unittests for split_args and parse_kv.  4 failing
  tests.because split_args is injecting extra newlines.
10 years ago
James Cammarata 065733ad93 Moving more action plugins over and fixing some bugs with role loading 10 years ago
James Cammarata 62d79568be Creating playbook executor and dependent classes 10 years ago
James Cammarata 24bebd85b4 Adding v2 task/block iterator and some reorganizing 10 years ago
James Cammarata 229d49fe36 Adding new playbook objects for v2
* Playbook
* TaskInclude
10 years ago
James Cammarata 0ed9746db3 Adding Play class for v2 10 years ago
James Cammarata 11822f0d57 Adding VariableManager class for v2 10 years ago
James Cammarata 3b0e64127d Refactoring role spec stuff into a dedicated parsing class
Also reworking tests to cut down on the number of patches required
by sub-classing the DataLoader() class and reworking the base object's
structure a bit to allow its use
10 years ago
James Cammarata bd203a44be Adding more unittests for the v2 role class 10 years ago
Toshio Kuratomi e99dc5a57c Add copyright and py3 compat header 10 years ago
Toshio Kuratomi 67ff4428d5 Fix up all python3 issues that do not have to do with text/bytes 10 years ago
James Cammarata 58defa5cce Adding role deps to v2 Role class and fixing some bugs 10 years ago
James Cammarata 7ea84d7499 More v2 roles class work
* added ability to set parents (will be used when the deps are loaded)
* added role caching, so roles are not reloaded needlessly (and for
  use in detecting when roles have already been run)
* reworked the way metadata was stored - now individual attribute fields
  instead of a dictionary blob
10 years ago
James Cammarata 44afa7facc Updating Role class for new DataLoader stuff 10 years ago
James Cammarata 7cb489eca3 Adding a data parsing class for v2 10 years ago
James Cammarata 2ff17ebd93 Adding in VaultEditor tests from old unittests 10 years ago
Toshio Kuratomi c1b290a311 Fix logic that prevents multiple action, local_action, and modules to be specified. 10 years ago
Toshio Kuratomi b3452de8a7 Hook up the general parsing unittests and get them passing 10 years ago
James Cammarata 0a8c91a812 Fixing up tests, removing some of the yaml error stuff from parsing
* moved old unittests for vault over to the new codebase
* reverted YAML error helpers and reverted the load() function
  in parsing/__init__.py, pending a rewrite of a new YAML loader
  class of some kind to encapsulate all of that
* fixed an error in in the module args parser regarding the shell/
  command argument parsing, where some additional arguments were
  being lost
10 years ago
Toshio Kuratomi e78c5f925b Python3 fixes 10 years ago
Toshio Kuratomi a954220957 Migrate the v2/tests to use the ansible.compat module 10 years ago
James Cammarata b0069a338e Overhauls to v2 code
* using inspect module instead of iteritems(self.__class__.__dict__, due
  to the fact that the later does not include attributes from parent
  classes
* added tags/when attributes to Base() class for use by all subclasses
* removed value/callable code from Attribute, as they are not used
* started moving some limited code from utils to new places in v2 tree
  (vault, yaml-parsing related defs)
* re-added ability of Block.load() to create implicit blocks from tasks
* started overhaul of Role class and role-related code
10 years ago
James Cammarata 57d2622c8c Adding block code and tests 10 years ago
James Cammarata 21577ff2cc Moved v2 tests for plugins to new location 10 years ago
James Cammarata 1d04e4b3d2 Updating unittests for v2 stuff 10 years ago
Toshio Kuratomi acf4bc95a3 Give all v2 tests the python3 compat boilerplate 10 years ago
Toshio Kuratomi a707f5acfe Fix relative imports 10 years ago
Toshio Kuratomi 6ecca227b8 Fix missing import 10 years ago
Toshio Kuratomi 057c1df303 Remove temp file 10 years ago
Toshio Kuratomi cf5ce97275 Somehow, git mv only rm'd test/v2 and didn't add v2/test 10 years ago