Download most recent pricing information from AWS and convert to a local
    JSON file.

    CLI Examples:

    .. code-block:: bash

        salt-cloud -f update_pricing my-ec2-config
        salt-cloud -f update_pricing my-ec2-config type=linux

    .. versionadded:: 2015.8.0

def update_pricing(kwargs=None, call=None):
    '''
    Download most recent pricing information from AWS and convert to a local
    JSON file.

    CLI Examples:

    .. code-block:: bash

        salt-cloud -f update_pricing my-ec2-config
        salt-cloud -f update_pricing my-ec2-config type=linux

    .. versionadded:: 2015.8.0
    '''
    sources = {
        'linux': 'https://a0.awsstatic.com/pricing/1/ec2/linux-od.min.js',
        'rhel': 'https://a0.awsstatic.com/pricing/1/ec2/rhel-od.min.js',
        'sles': 'https://a0.awsstatic.com/pricing/1/ec2/sles-od.min.js',
        'mswin': 'https://a0.awsstatic.com/pricing/1/ec2/mswin-od.min.js',
        'mswinsql': 'https://a0.awsstatic.com/pricing/1/ec2/mswinSQL-od.min.js',
        'mswinsqlweb': 'https://a0.awsstatic.com/pricing/1/ec2/mswinSQLWeb-od.min.js',
    }

    if kwargs is None:
        kwargs = {}

    if 'type' not in kwargs:
        for source in sources:
            _parse_pricing(sources[source], source)
    else:
        _parse_pricing(sources[kwargs['type']], kwargs['type'])