<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Pushing config changes from CLI to XIQ in ExtremeCloud IQ</title>
    <link>https://community.extremenetworks.com/t5/extremecloud-iq/pushing-config-changes-from-cli-to-xiq/m-p/117195#M4450</link>
    <description>&lt;P&gt;Yes, you can sync CLI changes to XIQ by enabling configuration sync. After making CLI changes, save the running config on the switch, then trigger a sync in XIQ to pull the updates. Ensure the device profile allows CLI overrides to avoid conflicts. This approach keeps both methods consistent for your team.&lt;/P&gt;</description>
    <pubDate>Thu, 26 Dec 2024 05:50:28 GMT</pubDate>
    <dc:creator>stevediaz</dc:creator>
    <dc:date>2024-12-26T05:50:28Z</dc:date>
    <item>
      <title>Pushing config changes from CLI to XIQ</title>
      <link>https://community.extremenetworks.com/t5/extremecloud-iq/pushing-config-changes-from-cli-to-xiq/m-p/117097#M4434</link>
      <description>&lt;P&gt;I've been trying to figure out a way to make management from both XIQ and CLI work for our 5420 switches. I will generally make changes via CLI as I find it to be much faster than going through XIQ but I have some staff that prefer using a GUI to change VLANs on a port. Is there a way to sync device-level changes up to XIQ?&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 12 Dec 2024 15:03:42 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremecloud-iq/pushing-config-changes-from-cli-to-xiq/m-p/117097#M4434</guid>
      <dc:creator>AnthonyM</dc:creator>
      <dc:date>2024-12-12T15:03:42Z</dc:date>
    </item>
    <item>
      <title>Re: Pushing config changes from CLI to XIQ</title>
      <link>https://community.extremenetworks.com/t5/extremecloud-iq/pushing-config-changes-from-cli-to-xiq/m-p/117123#M4438</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;There is no such tool. I've tried to find XIQ API endpoint do update VLAN to port mappings configuration but didn't find any (you can check EXOS/VOSS supported API calls list here):&amp;nbsp;&lt;A href="https://api.extremecloudiq.com/swagger-ui/index.html#/Device" target="_blank" rel="noopener"&gt;https://api.extremecloudiq.com/swagger-ui/index.html#/Device&lt;/A&gt;&lt;/P&gt;&lt;P&gt;If you find any then I would just implement syslog server to send API calls for particular CLI commands received from switches followed by "save". Below is some concept code from AI:&lt;/P&gt;&lt;PRE&gt;&lt;SPAN class=""&gt;import&lt;/SPAN&gt; socketserver
&lt;SPAN class=""&gt;import&lt;/SPAN&gt; re
&lt;SPAN class=""&gt;import&lt;/SPAN&gt; requests

&lt;SPAN class=""&gt;# Find the API endpoint for ExtremeCloud IQ. You get token from HTTP Basic Auth&lt;/SPAN&gt;
api_url = &lt;SPAN class=""&gt;"https://api.extremecloudiq.com/device/update"&lt;/SPAN&gt;
api_headers = {
    &lt;SPAN class=""&gt;"Authorization"&lt;/SPAN&gt;: &lt;SPAN class=""&gt;"Bearer &amp;lt;&amp;lt;YOUR_API_TOKEN&amp;gt;&amp;gt;"&lt;/SPAN&gt;,
    &lt;SPAN class=""&gt;"Content-Type"&lt;/SPAN&gt;: &lt;SPAN class=""&gt;"application/json"&lt;/SPAN&gt;
}

&lt;SPAN class=""&gt;# Function to send API call&lt;/SPAN&gt;
&lt;SPAN class=""&gt;def&lt;/SPAN&gt; &lt;SPAN class=""&gt;update_device_profile&lt;/SPAN&gt;(&lt;SPAN class=""&gt;vlan, ports&lt;/SPAN&gt;):
    payload = {
        &lt;SPAN class=""&gt;"vlan"&lt;/SPAN&gt;: vlan,
        &lt;SPAN class=""&gt;"ports"&lt;/SPAN&gt;: ports
    }
    response = requests.post(api_url, json=payload, headers=api_headers)
    &lt;SPAN class=""&gt;return&lt;/SPAN&gt; response.status_code, response.json()

&lt;SPAN class=""&gt;# Syslog handler class&lt;/SPAN&gt;
&lt;SPAN class=""&gt;class&lt;/SPAN&gt; &lt;SPAN class=""&gt;SyslogHandler&lt;/SPAN&gt;(socketserver.BaseRequestHandler):
    &lt;SPAN class=""&gt;def&lt;/SPAN&gt; &lt;SPAN class=""&gt;handle&lt;/SPAN&gt;(&lt;SPAN class=""&gt;self&lt;/SPAN&gt;):
        data = self.request[&lt;SPAN class=""&gt;0&lt;/SPAN&gt;].strip()
        message = data.decode(&lt;SPAN class=""&gt;'utf-8'&lt;/SPAN&gt;)
        
        &lt;SPAN class=""&gt;# Regex to match the command "configure vlan XYZ add port A,B,C"&lt;/SPAN&gt;
        &lt;SPAN class=""&gt;match&lt;/SPAN&gt; = re.search(&lt;SPAN class=""&gt;r'configure vlan (\d+) add port ([\d,]+)'&lt;/SPAN&gt;, message)
        &lt;SPAN class=""&gt;if&lt;/SPAN&gt; &lt;SPAN class=""&gt;match&lt;/SPAN&gt;:
            vlan = &lt;SPAN class=""&gt;match&lt;/SPAN&gt;.group(&lt;SPAN class=""&gt;1&lt;/SPAN&gt;)
            ports = &lt;SPAN class=""&gt;match&lt;/SPAN&gt;.group(&lt;SPAN class=""&gt;2&lt;/SPAN&gt;).split(&lt;SPAN class=""&gt;','&lt;/SPAN&gt;)
            status_code, response = update_device_profile(vlan, ports)
            &lt;SPAN class=""&gt;print&lt;/SPAN&gt;(&lt;SPAN class=""&gt;f"API Response: &lt;SPAN class=""&gt;{status_code}&lt;/SPAN&gt;, &lt;SPAN class=""&gt;{response}&lt;/SPAN&gt;"&lt;/SPAN&gt;)

&lt;SPAN class=""&gt;# Syslog server class&lt;/SPAN&gt;
&lt;SPAN class=""&gt;class&lt;/SPAN&gt; &lt;SPAN class=""&gt;SyslogServer&lt;/SPAN&gt;(socketserver.UDPServer):
    &lt;SPAN class=""&gt;def&lt;/SPAN&gt; &lt;SPAN class=""&gt;__init__&lt;/SPAN&gt;(&lt;SPAN class=""&gt;self, server_address, handler_class=SyslogHandler&lt;/SPAN&gt;):
        &lt;SPAN class=""&gt;super&lt;/SPAN&gt;().__init__(server_address, handler_class)

&lt;SPAN class=""&gt;if&lt;/SPAN&gt; __name__ == &lt;SPAN class=""&gt;"__main__"&lt;/SPAN&gt;:
    HOST, PORT = &lt;SPAN class=""&gt;"0.0.0.0"&lt;/SPAN&gt;, &lt;SPAN class=""&gt;514&lt;/SPAN&gt;
    server = SyslogServer((HOST, PORT))
    &lt;SPAN class=""&gt;print&lt;/SPAN&gt;(&lt;SPAN class=""&gt;f"Syslog server started on &lt;SPAN class=""&gt;{HOST}&lt;/SPAN&gt;:&lt;SPAN class=""&gt;{PORT}&lt;/SPAN&gt;"&lt;/SPAN&gt;)
    server.serve_forever()&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 16 Dec 2024 13:20:13 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremecloud-iq/pushing-config-changes-from-cli-to-xiq/m-p/117123#M4438</guid>
      <dc:creator>Bartek</dc:creator>
      <dc:date>2024-12-16T13:20:13Z</dc:date>
    </item>
    <item>
      <title>Re: Pushing config changes from CLI to XIQ</title>
      <link>https://community.extremenetworks.com/t5/extremecloud-iq/pushing-config-changes-from-cli-to-xiq/m-p/117195#M4450</link>
      <description>&lt;P&gt;Yes, you can sync CLI changes to XIQ by enabling configuration sync. After making CLI changes, save the running config on the switch, then trigger a sync in XIQ to pull the updates. Ensure the device profile allows CLI overrides to avoid conflicts. This approach keeps both methods consistent for your team.&lt;/P&gt;</description>
      <pubDate>Thu, 26 Dec 2024 05:50:28 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremecloud-iq/pushing-config-changes-from-cli-to-xiq/m-p/117195#M4450</guid>
      <dc:creator>stevediaz</dc:creator>
      <dc:date>2024-12-26T05:50:28Z</dc:date>
    </item>
    <item>
      <title>Re: Pushing config changes from CLI to XIQ</title>
      <link>https://community.extremenetworks.com/t5/extremecloud-iq/pushing-config-changes-from-cli-to-xiq/m-p/117796#M4521</link>
      <description>&lt;P&gt;Are we talking about XIQ site engine or cloud iq?&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 07 Feb 2025 19:49:16 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremecloud-iq/pushing-config-changes-from-cli-to-xiq/m-p/117796#M4521</guid>
      <dc:creator>CordScott</dc:creator>
      <dc:date>2025-02-07T19:49:16Z</dc:date>
    </item>
    <item>
      <title>Re: Pushing config changes from CLI to XIQ</title>
      <link>https://community.extremenetworks.com/t5/extremecloud-iq/pushing-config-changes-from-cli-to-xiq/m-p/117804#M4523</link>
      <description>&lt;P&gt;XIQ. In Site Engine you can sync data from managed device so there is no problem to change something in your switch using CLI and then update XIQ-SE.&lt;/P&gt;</description>
      <pubDate>Mon, 10 Feb 2025 11:12:26 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremecloud-iq/pushing-config-changes-from-cli-to-xiq/m-p/117804#M4523</guid>
      <dc:creator>Bartek</dc:creator>
      <dc:date>2025-02-10T11:12:26Z</dc:date>
    </item>
  </channel>
</rss>

