首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【运维自动化-作业平台】如何使用全局变量之命名空间类型?

命名空间类型的全局变量主要适用场景是同一批主机在多个步骤间需要传递独立的变量值,比如内网ip、hostame,每台主机都是不同的变量值。而字符串变量是全局针对所有主机所有步骤都是一样的变量值。...实操演示例:定义一个local_ip的命名空间变量,目标两台机器,然后添加两个执行脚本的步骤,看下变量是如何渲染的。...1、添加命名空间变量local_ip2、添加两个执行脚本步骤(步骤一)(步骤二)3、调试执行结果可以看到两台主机最后渲染的命名空间变量local_ip是不同的值,是各自的内网ip,符合预期。...类似的场景还有很多,掌握命名空间变量的核心实现逻辑,可以满足实际作业步骤设计过程的复杂场景。

12610

【运维自动化-作业平台】魔法变量到底如何使用之命名空间类型变量

上一篇我们举例了主机列表类型的魔法变量实操指南,点击查看,那命名空间类型的如何使用呢?...命名空间类型变量值魔法变量用法 语法 # job_import {{JOB_NAMESPACE_ALL}} # 获取所有命名空间变量的汇聚值 echo ${JOB_NAMESPACE_ALL} # job_import...} 的输出(假定有 ns_var1 和 ns_var2 两个命名空间类型全局变量): ### echo ${JOB_NAMESPACE_ALL} 的输出(假定有 ns_var1 和 ns_var2 两个命名空间类型全局变量...1:cpu_info 命名空间变量2:mem_info 图片 2、作业添加三个步骤 魔法变量赋值 魔法变量取值-某一个命名空间变量值 魔法变量取值-所有命名空间变量值 图片 (命名空间变量赋值) 图片...图片 (命名空间变量取值) 3、调试执行 (单个命名空间变量值输出) (所有命名空间变量值输出) 4、通过魔法变量取到汇聚值之后就可以通过awk等方式进行处理,然后把需要的输出字段引用为新变量亮,给其他步骤使用了

5700
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【Jetpack】Navigation 导航组件 ⑤ ( NavigationUI 类使用 )

    Android 开发中 , NavigationUI 是 用于构建 和 管理应用程序导航界面 的重要工具 , 可以极大地提高开发效率 ; 一、NavigationUI 类简介 NavigationUI 是 Google...本章节介绍使用 AppBar 中的菜单选项控制 Navigation 界面跳转 的流程 ; 1、创建 Fragment 创建两个 Fragment , 分别作为要 互相跳转 的 两个界面 ; 右键点击包名..., 松开鼠标 , 会弹出如下 " Navigation Graph " 对话框 , 选择要拖入的 NavigationGraph , 然后点击右下角 " OK " 按钮 ; 拖入后 , 为该空间添加约束...NavigationUI 进行导航 , 如果跳转失败 , 再使用传统的方式 return NavigationUI.onNavDestinationSelected(item, navController...NavigationUI 进行导航 , 如果跳转失败 , 再使用传统的方式 return NavigationUI.onNavDestinationSelected(item, navController

    96440

    实践 | Google IO 应用是如何适配大尺寸屏幕 UI 的?

    因此,让应用能充分利用额外的屏幕空间显得尤其重要。本文将展示我们为了让 Google I/O 应用在大尺寸屏幕上更好地显示而用到的一些技巧。...Google I/O 应用在主 Activity 中使用了两个不同的布局,其中包含了我们的人体工程学导航。...由于 Google I/O 应用使用了 Jetpack Navigation 实现不同界面之间的切换,这个挑战对导航图有怎样的影响,我们又该如何记录当前屏幕上的内容呢?...不过,我们不能直接从会议列表导航到会议详情,因为两者如今已经被放到了不同的窗格中,也就是存在于不同的导航图里。...在应用运行时,数据绑定会调用下面的函数,并将解析自资源文件的值作为参数传进去。

    2.1K20

    Android Compose 新闻App(六)导航动画、WebView、浮动按钮、底部导航

    正文   一些应用有一些花里花哨的操作就会让人眼前一亮,大部分花里胡哨的操作就是动画,那么作为Compose的导航也是可以使用动画的,下面我们来使用一下: 一、导航动画 ① 添加依赖   导航动画是需要一个依赖库的...② 使用 使用之前我们先来看一下要更改的地方,如下图所示: 图中是上一篇文章中所写的代码,如果要使导航有动画效果,则需要换一下。...换了之后如下图所示: 对应的包名就是这三个: import com.google.accompanist.navigation.animation.AnimatedNavHost import com.google.accompanist.navigation.animation.composable...记得clickable要添加,下面我们运行一下,看能不能跳转过去。...真是世事难料啊,没想到会报错,报错的原因就是url的问题,如果我们将Url作为参数传递,那么需要对url做一个处理,如下图所示: 下面我们再运行一次: 加载就完成了。

    4.9K20

    1. Jetpack源码解析---看完你就知道Navigation是什么了?

    背景 之前已经翻译过了Google官方的CodeLabs上面的教程,教程很详细,代码在Github上也可以找到,本篇文章旨在自己的APP上使用效果及演示Demo,来具体的使用Navigation。...基本使用 虽然在之前的文章中已经很详细的介绍了Navigation,但是这里也简单的叙述一下我在项目中的具体使用: 2.1 Navigation+DrawerLayout+ToolBar 我们可以通过使用...我们可以在naviagtion布局中使用标签, name是我们传参的key argType是参数类型 defaultValue默认值 nullable 是否可空 <argument android...的navigate()方法同时支持direction类型的传递。...e) { return false; } } 我们看到最后还是调用navigate()方法,并且将MenuItem的ID作为参数传递过去: public

    2.2K20

    JetPack指路明灯—Navigation

    创建Navigation Graph 在res文件夹下创建navigation文件夹,并定义一个xxxx.xml文件,选择类型为navigation。...同时,在onCreate的时候,创建了NavController,与mGraphId进行绑定。 使用路由 在Fragment中,可以通过NavController来进行路由,代码如下所示。...popBackStack navigateUp只能响应向上一级的路由控制,而不能跨级进行路由返回,popBackStack则是对其的补充,可以指定路由返回的action,代码如下所示。...个人感觉这个API命名为popUntil可能更合适一点。 在代码中,也存在类似的调用方法。...总结 Navigation的引入,是Google在JetPack上下的第一步棋,通过Navigation,Google指明了在JetPack下Android开发的大方向: 单Activity架构:Google

    1K20

    1. Jetpack源码解析---看完你就知道Navigation是什么了?

    背景 之前已经翻译过了Google官方的CodeLabs上面的教程,教程很详细,代码在Github上也可以找到,本篇文章旨在自己的APP上使用效果及演示Demo,来具体的使用Navigation。...基本使用 虽然在之前的文章中已经很详细的介绍了Navigation,但是这里也简单的叙述一下我在项目中的具体使用: 2.1 Navigation+DrawerLayout+ToolBar 我们可以通过使用...我们可以在naviagtion布局中使用标签, name是我们传参的key argType是参数类型 defaultValue默认值 nullable 是否可空 <argument android...的navigate()方法同时支持direction类型的传递。...e) { return false; } } 我们看到最后还是调用navigate()方法,并且将MenuItem的ID作为参数传递过去: public

    2.6K30

    Android-Jetpack笔记-Navigation之Fragment使用

    Jetpack笔记代码 本文源码基于SDK 29,IDE是Android studio 3.5.3 使用 创建工程,引入依赖, implementation 'androidx.navigation:...-- 底部的导航view,菜单文件里定义了3个item --> google.android.material.bottomnavigation.BottomNavigationView...-- fragment作为页面容器,navGraph指定了导航图的结构 --> <fragment android:id="@+id/nav_host_fragment"...这里我们使用的是FragmentNavigator, //FragmentNavigator.java NavDestination navigate(Destination destination,...ft.commit(); } 这里可以看出一个问题,每次切换目的地,fragment是反复销毁重建的,按照谷歌推荐的1个APP只需1个activity的思路开发,这样是没问题的,但是这里的fragment是作为首页的

    1.7K30

    1. Android_Jetpack组件---Naviagtion源码解析

    背景 之前已经翻译过了Google官方的CodeLabs上面的教程,教程很详细,代码在Github上也可以找到,本篇文章旨在自己的APP上使用效果及演示Demo,来具体的使用Navigation。...基本使用 虽然在之前的文章中已经很详细的介绍了Navigation,但是这里也简单的叙述一下我在项目中的具体使用: 2.1 Navigation+DrawerLayout+ToolBar 我们可以通过使用...我们可以在naviagtion布局中使用标签, name是我们传参的key argType是参数类型 defaultValue默认值 nullable 是否可空 <argument android...的navigate()方法同时支持direction类型的传递。...e) { return false; } } 我们看到最后还是调用navigate()方法,并且将MenuItem的ID作为参数传递过去: public

    2.2K10

    【Jetpack】Navigation 导航组件 ④ ( Fragment 跳转中使用 safe args 安全传递参数 )

    Bundle 传递数据安全性差 使用 传统的方式 , 在 Fragment 之间 传递 数据 , 类型很不安全 , 设置 传递的数据时 , 需要设置 放入的 数据类型 , 如下代码所示 : // 正常方式传递参数...NAME 属性值是 String 类型的 , 那么在 FragmentB 中获取的 NAME 属性值也必须是 String 类型的 , arguments?....let { name = it.getString("NAME") } 此处 没有 类型检查 , 即使你写错了具体的 属性值 名称 和 属性值 类型 , 编译器也不会报错 , 但是在执行时 ,...会出现错误 ; 下面的代码中 , 调用 getInt(“Name”) 也不会报错 ; 上面的 使用 Bundle 在 Fragment 之间传递 参数 , 没有类型检查 , 即使写错了数据类型 也不会报错...FragmentA 跳转到 FragmentB 使用传统的方式传递参数 , 类型不安全 ; FragmentA 页面代码 : package kim.hsl.nav import android.os.Bundle

    56220

    【Android进阶必学】JetPack指路明灯—Navigation

    创建Navigation Graph 在res文件夹下创建navigation文件夹,并定义一个xxxx.xml文件,选择类型为navigation。...同时,在onCreate的时候,创建了NavController,与mGraphId进行绑定。 使用路由 在Fragment中,可以通过NavController来进行路由,代码如下所示。...popBackStack navigateUp只能响应向上一级的路由控制,而不能跨级进行路由返回,popBackStack则是对其的补充,可以指定路由返回的action,代码如下所示。...个人感觉这个API命名为popUntil可能更合适一点。 在代码中,也存在类似的调用方法。...总结 Navigation的引入,是Google在JetPack上下的第一步棋,通过Navigation,Google指明了在JetPack下Android开发的大方向: 单Activity架构:Google

    2.1K00

    Android-Jetpack笔记-Navigation之Fragment支持复用

    上篇文章Android-Jetpack笔记-Navigation之Fragment使用提到,每次切换目的地,fragment是反复销毁重建的,按照谷歌推荐的1个APP只需1个activity的思路开发,...这样是没问题的,但是这里的fragment是作为首页的3个常驻页面,我们是希望能够保存起来的,毕竟,销毁重建需要重新请求网络数据,重新初始化view,严重影响用户体验,那么接下来继续上篇文章的分析,支持...,第1步,在调用fragment初始化的地方,改成复用: //FixFragmentNavigator.java NavDestination navigate(){ //fix 1: 把类名作为...前边提到的自定义导航器需要指定名字@Navigator.Name("fixFragment"),是因为不同类型的目的地(页面)需要使用不同的导航器,在NavigatorProvider里有个map存储了多个导航器...可以看出,Navigation的思想是,把各种类型的页面都抽象成目的地Destination,进行统一跳转,不同的导航器则封装了不同类型页面跳转的实现,由NavController统一调度,而许许多多的目的地则编织成了一个导航图

    2.1K20

    安卓Navigation系列——进阶篇

    前言 上篇对Navigation的一些概念进行了介绍,并在前言中提到了app中常用的一个场景,就是app的首页,一般都会由一个activity+多个子tab组成,这种场景有很多种实现方式,比如可以使用RadioGroup...使用Navigation+BottomNavigationView结合navigationUI扩展库,这种方式是不是相比于以往的实现方式更简单?...onCreateNavController(mNavController); ...... } 去掉无关代码,只看核心代码,可以看到,有一个NavHostController类型的mNavController...我们知道replace方法每次都会重新创建fragment,所以使用Navigation创建的底部导航页面,每次点击切换页面当前fragment都会重建。...那么我们是不能在布局文件中通过app:navGraph属性指定自定义的导航资源文件了,只能在布局文件中去掉app:navGraph这个属性,然后在添加FixFragmentNavigator的同时,通过代码将导航资源文件设置进去

    3.2K30
    领券