{"product_id":"139602","title":"Running GitHub Actions ","description":"\u003ccenter\u003e\u003cdiv style=\"text-align:center\"\u003e\u003cimg src=\"https:\/\/tmgdisk01.cafe24.com\/images\/vs\/4172\/sv\/3jXPBvkigZ80hUAtiqgL9OTDDSShzn.png?v=1765075523\" style=\"max-width:100%;max-height:10px\"\u003e\u003c\/div\u003e\u003c\/center\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003ccenter\u003e\n\n\u003cdiv style=\"width:95%\"\u003e\n\n\u003cdiv style=\"text-align:center;font-size:30px;font-weight:bolder;line-height:1.6em\"\u003e Running GitHub Actions \u003c\/div\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003cdiv style=\"border-bottom:1px;border-bottom-style:dotted;border-color:;padding-bottom:20px\"\u003e\u003ccenter\u003e\u003ctable align=\"center\" width=\"100%\"\u003e\u003ctbody style=\"border:0px\"\u003e\n\n\u003ctr\u003e\u003ctd align=\"center\" style=\"line-height:1.2em;text-align:center;font-size:18px;color:black;font-weight:bold;padding-bottom:20px;\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\n\n\u003ctr\u003e\u003ctd style=\"text-align:center\"\u003e\u003cimg src=\"https:\/\/image.yes24.com\/goods\/126659010\/XL\" style=\"max-width:100%;height:auto\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\n\n\n\u003c\/tbody\u003e\u003c\/table\u003e\u003c\/center\u003e\u003c\/div\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003cdiv style=\"width:95%;{split_style6}padding-top:20px;padding-bottom:20px\"\u003e\n\n\u003cdiv style=\"text-align:left;font-size:16px;font-weight:bold;padding-bottom:20px\"\u003e Description \u003c\/div\u003e\n\n\u003cdiv style=\"text-align:left;word-break:break-all;font-size:14px;line-height:1.6em;\"\u003e\n\n\u003cdiv\u003e\u003ch5\u003e \u003cb\u003eBook Introduction\u003c\/b\u003e\n\u003c\/h5\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\u003cdiv\u003e \u003cb\u003eA Comprehensive Guide to GitHub Actions to Maximize Developer Productivity\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e Reduce development time and improve collaboration efficiency with GitHub Actions! The author, an open source author, trainer, and DevOps director, explains how to use GitHub perfectly.\u003cbr\u003e Learn what actions and workflows are and how to integrate them into your processes to simplify, standardize, and automate your development process.\u003cbr\u003e Implement everything from code validation to complex deployment pipelines with GitHub Actions. Whether you're new to CI\/CD or have been considering using GitHub Actions, this practical guide is designed to help you immediately apply it to your projects.\u003cbr\u003e Let's transform your development process with GitHub Actions!\u003cbr\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cul\u003e\u003cli\u003e You can preview some of the book's contents.\u003cbr\u003e \u003cspan\u003ePreview\u003c\/span\u003e\n\n\u003c\/li\u003e\u003c\/ul\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\u003cdiv\u003e  \u003ch5\u003e\u003cb\u003eindex\u003c\/b\u003e\u003c\/h5\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e \u003cb\u003ePART 1: The Basics of GitHub Actions\u003cbr\u003e\u003cbr\u003e CHAPTER 1: BASICS\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _1.1 GitHub Actions\u003cbr\u003e __1.1.1 Automation Platform\u003cbr\u003e __1.1.2 Framework\u003cbr\u003e _1.2 Use Cases for GitHub Actions\u003cbr\u003e __1.2.1 Starter Workflow\u003cbr\u003e __1.2.2 Action Marketplace\u003cbr\u003e _1.3 Usage Fees\u003cbr\u003e __1.3.1 Free Model\u003cbr\u003e __1.3.2 Paid Model\u003cbr\u003e _1.4 GitHub Actions Migration Checklist\u003cbr\u003e __1.4.1 GitHub Usage\u003cbr\u003e __1.4.2 Public Action\u003cbr\u003e __1.4.3 Self-made actions\u003cbr\u003e __1.4.4 Artifact Management\u003cbr\u003e __1.4.5 Action Management\u003cbr\u003e _1.5 Conclusion\u003cbr\u003e\u003cbr\u003e \u003cb\u003eCHAPTER 2 How Actions Work\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _2.1 Overview\u003cbr\u003e _2.2 Workflow Trigger\u003cbr\u003e _2.3 Components\u003cbr\u003e __2.3.1 Step\u003cbr\u003e __2.3.2 Runner\u003cbr\u003e __2.3.3 Job\u003cbr\u003e __2.3.4 Workflow\u003cbr\u003e _2.4 Running the Workflow\u003cbr\u003e _2.5 Conclusion\u003cbr\u003e\u003cbr\u003e \u003cb\u003eCHAPTER 3 JOB IMPLEMENTATION\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _3.1 Action Structure\u003cbr\u003e _3.2 Interaction with Actions\u003cbr\u003e _3.3 How to use actions\u003cbr\u003e _3.4 Public Actions and Marketplace\u003cbr\u003e _3.5 Conclusion\u003cbr\u003e\u003cbr\u003e \u003cb\u003eCHAPTER 4: USING WORKFLOWS\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _4.1 Creating a workflow from a repository\u003cbr\u003e _4.2 Workflow Commit\u003cbr\u003e _4.3 Using the GitHub Actions extension for VS Code\u003cbr\u003e _4.4 Conclusion\u003cbr\u003e \u003cbr\u003e\u003cb\u003eCHAPTER 5 Runner\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _5.1 GitHub Hosting Runner\u003cbr\u003e __5.1.1 Support Software in Runner Image\u003cbr\u003e __5.1.2 Adding Software to the Runner\u003cbr\u003e _5.2 Self-hosted runner\u003cbr\u003e __5.2.1 Requirements for a Self-Hosted Runner System\u003cbr\u003e __5.2.2 Limitations of Self-Hosted Runners\u003cbr\u003e __5.2.3 Self-Hosted Runner Security Considerations\u003cbr\u003e __5.2.4 Setting up a self-hosted runner\u003cbr\u003e __5.2.5 Using a Self-Hosted Runner\u003cbr\u003e __5.2.6 Using Self-Hosted Runners and Labels\u003cbr\u003e __5.2.7 Self-Hosted Runner Troubleshooting\u003cbr\u003e __5.2.8 Removing the self-hosted runner\u003cbr\u003e _5.3 Self-hosted Runner Autoscaling\u003cbr\u003e _5.4 Just in Time Runner\u003cbr\u003e _5.5 Conclusion\u003cbr\u003e\u003cbr\u003e \u003cb\u003ePART 2 Components of GitHub Actions\u003cbr\u003e\u003cbr\u003e CHAPTER 6 MANAGING THE WORKFLOW ENVIRONMENT\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _6.1 Workflow name and workflow execution name\u003cbr\u003e _6.2 Context\u003cbr\u003e _6.3 Environment Variables\u003cbr\u003e __6.3.1 Basic environment variables\u003cbr\u003e _6.4 Secret and Configuration Variables\u003cbr\u003e _6.5 Workflow Permission Management\u003cbr\u003e _6.6 Deployment Environment\u003cbr\u003e _6.7 Conclusion\u003cbr\u003e\u003cbr\u003e \u003cb\u003eCHAPTER 7 Data Management in Workflows\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _7.1 Using Input\/Output in Workflows \u003cbr\u003e__7.1.1 Defining and referencing inputs to a workflow\u003cbr\u003e Check the output in step __7.1.2\u003cbr\u003e __7.1.3 Checking the output of the job\u003cbr\u003e Output of actions captured in step __7.1.4\u003cbr\u003e _7.2 Artifact Definition\u003cbr\u003e _7.3 Uploading and Downloading Artifacts\u003cbr\u003e __7.3.1 Add parameter\u003cbr\u003e _7.4 Using Cache in GitHub Actions\u003cbr\u003e __7.4.1 Using Explicit Cache Actions\u003cbr\u003e __7.4.2 Cache Monitoring\u003cbr\u003e __7.4.3 Enabling caching in the settings action\u003cbr\u003e _7.5 Conclusion\u003cbr\u003e\u003cbr\u003e \u003cb\u003eCHAPTER 8 MANAGING WORKFLOW EXECUTIVES\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _8.1 Advanced Change Triggers\u003cbr\u003e __8.1.1 Triggers by Activity Type\u003cbr\u003e __8.1.2 Specifying triggers using filters\u003cbr\u003e _8.2 Workflow Trigger Without Changes\u003cbr\u003e _8.3 Concurrency Handling\u003cbr\u003e _8.4 Running a Workflow with a Matrix\u003cbr\u003e _8.5 Workflow-specific functions\u003cbr\u003e __8.5.1 Conditional and State Functions\u003cbr\u003e _8.6 Conclusion\u003cbr\u003e\u003cbr\u003e \u003cb\u003ePART 3 Security and Monitoring\u003cbr\u003e\u003cbr\u003e CHAPTER 9 ACTION AND SECURITY\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _9.1 Security through settings\u003cbr\u003e __9.1.1 Managing Workflow Execution in Pull Requests\u003cbr\u003e __9.1.2 Granting Workflow Permissions\u003cbr\u003e __9.1.3 CODEOWNERS file\u003cbr\u003e __9.1.4 Protected Tags\u003cbr\u003e __9.1.5 Protected Branches \u003cbr\u003e__9.1.6 Repository Rules\u003cbr\u003e _9.2 Security by Design\u003cbr\u003e __9.2.1 Secret Variables\u003cbr\u003e __9.2.2 Protecting Secret Variables\u003cbr\u003e __9.2.3 Token\u003cbr\u003e __9.2.4 Handling Untrusted Input\u003cbr\u003e __9.2.5 Dependency Security\u003cbr\u003e _9.3 Security through Monitoring\u003cbr\u003e __9.3.1 Scan\u003cbr\u003e __9.3.2 Safely Processing Pull Requests\u003cbr\u003e __9.3.3 Vulnerability in Workflow within Pull Requests\u003cbr\u003e __9.3.4 Vulnerabilities in source code within pull requests\u003cbr\u003e __9.3.5 Add pull request validation script\u003cbr\u003e __9.3.6 Safe Pull Request Processing\u003cbr\u003e _9.4 Conclusion\u003cbr\u003e\u003cbr\u003e \u003cb\u003eCHAPTER 10 MONITORING, LOGGING, AND DEBUGGING\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _10.1 Visibility Improvements\u003cbr\u003e __10.1.1 Understanding State at a High Level\u003cbr\u003e __10.1.2 Status Badges for Workflows\u003cbr\u003e _10.2 Status Operations Prior to Version\u003cbr\u003e __10.2.1 Connect workflow version to execution\u003cbr\u003e __10.2.2 Rerunning a job in a workflow\u003cbr\u003e _10.3 Workflow Debugging\u003cbr\u003e __10.3.1 Step-by-step debug logging\u003cbr\u003e __10.3.2 Runner Environment Debugging\u003cbr\u003e __10.3.3 Enable debugging\u003cbr\u003e _10.4 Logging Extensions and Customization\u003cbr\u003e __10.4.1 Add your own message to the log \u003cbr\u003e__10.4.2 Additional Log Customization\u003cbr\u003e __10.4.3 Custom Job Summary\u003cbr\u003e _10.5 Conclusion\u003cbr\u003e\u003cbr\u003e \u003cb\u003ePART 4 ​​Advanced Topics\u003cbr\u003e\u003cbr\u003e CHAPTER 11 CUSTOM ACTIONS\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _11.1 Action Structure Anatomy\u003cbr\u003e _11.2 Action Types\u003cbr\u003e __11.2.1 Compound Actions\u003cbr\u003e __11.2.2 Docker Container Actions\u003cbr\u003e __11.2.3 JavaScript Actions\u003cbr\u003e _11.3 Finishing creating the action\u003cbr\u003e _11.4 Posting Actions to GitHub Marketplace\u003cbr\u003e __11.4.1 Action Updates in the Marketplace\u003cbr\u003e __11.4.2 Removing Actions from the Marketplace\u003cbr\u003e _11.5 Action Toolkit\u003cbr\u003e __11.5.1 Using Workflow Commands in the Toolkit\u003cbr\u003e _11.6 Local Action\u003cbr\u003e _11.7 Conclusion\u003cbr\u003e\u003cbr\u003e \u003cb\u003eCHAPTER 12 ADVANCED WORKFLOW\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _12.1 My Starter Workflow\u003cbr\u003e __12.1.1 Starter Workflow Area\u003cbr\u003e __12.1.2 Starter Workflow File\u003cbr\u003e __12.1.3 Adding auxiliary pieces\u003cbr\u003e __12.1.4 Using the New Starter Workflow\u003cbr\u003e _12.2 Reusable Workflows\u003cbr\u003e __12.2.1 Input and Secret Variables\u003cbr\u003e __12.2.2 Output\u003cbr\u003e __12.2.3 Limitations\u003cbr\u003e _12.3 Required Workflow\u003cbr\u003e __12.3.1 Constraints\u003cbr\u003e __12.3.2 Example\u003cbr\u003e __12.3.3 Execution\u003cbr\u003e _12.4 Conclusion\u003cbr\u003e \u003cbr\u003e\u003cb\u003eCHAPTER 13 ADVANCED WORKFLOW TECHNIQUES\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _13.1 Using GitHub in Your Workflow\u003cbr\u003e __13.1.1 Using GitHub CLI\u003cbr\u003e __13.1.2 Script\u003cbr\u003e __13.1.3 GitHub API Calls\u003cbr\u003e _13.2 Automatic job creation using matrices\u003cbr\u003e __13.2.1 One-dimensional matrix\u003cbr\u003e __13.2.2 Multidimensional matrix\u003cbr\u003e __13.2.3 Include additional values\u003cbr\u003e __13.2.4 Excluding values\u003cbr\u003e __13.2.5 Handling Failure Cases\u003cbr\u003e __13.2.6 Defining maximum job concurrency\u003cbr\u003e _13.3 Using Containers in Workflows\u003cbr\u003e __13.3.1 Using containers as job execution environments\u003cbr\u003e __13.3.2 Using containers at the step level\u003cbr\u003e __13.3.3 Running a container as a service in a job\u003cbr\u003e _13.4 Conclusion\u003cbr\u003e\u003cbr\u003e \u003cb\u003eCHAPTER 14 Migrating to GitHub Actions\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e _14.1 Preparation\u003cbr\u003e __14.1.1 Source Code\u003cbr\u003e __14.1.2 Automation\u003cbr\u003e __14.1.3 Infrastructure\u003cbr\u003e __14.1.4 User\u003cbr\u003e _14.2 Azure Pipeline\u003cbr\u003e _14.3 CircleCI\u003cbr\u003e _14.4 GitLab CI\/CD\u003cbr\u003e _14.5 Jenkins\u003cbr\u003e _14.6 Travis CI\u003cbr\u003e _14.7 GitHub Action Importer\u003cbr\u003e __14.7.1 Authentication\u003cbr\u003e __14.7.2 Plan\u003cbr\u003e __14.7.3 Build Step Related Matters\u003cbr\u003e __14.7.4 Manual To-Do\u003cbr\u003e __14.7.5 File Manifest\u003cbr\u003e __14.7.6 Prediction \u003cbr\u003e__14.7.7 Performing a dry run\u003cbr\u003e __14.7.8 Custom transformer for importer\u003cbr\u003e __14.7.9 Actual Migration\u003cbr\u003e _14.8 Conclusion\u003cbr\u003e Search\u003c\/div\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\u003cdiv\u003e\u003ch5\u003e \u003cb\u003eDetailed image\u003c\/b\u003e \u003c\/h5\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv\u003e\u003cimg src=\"https:\/\/image.yes24.com\/momo\/TopCate4505\/MidCate003\/450423405.jpg\" border=\"0\" alt=\"Detailed Image 1\"\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cbr\u003e\u003cdiv\u003e\u003ch5\u003e \u003cb\u003ePublisher's Review\u003c\/b\u003e\n\u003c\/h5\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e \u003cb\u003eThe starting point of project automation,\u003cbr\u003e GitHub Actions\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e GitHub Actions is a continuous integration and continuous delivery (CI\/CD) platform that lets you automate your build, test, and deployment pipelines.\u003cbr\u003e Developers who use GitHub extensively can implement automation using GitHub Actions without using any other applications.\u003cbr\u003e This book covers everything from basic automation methods to security and advanced topics.\u003cbr\u003e\u003cbr\u003e \u003cb\u003ePart 1.\u003cbr\u003e GitHub Actions Basics\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e We introduce the definition and basic operation of GitHub Actions, the core elements of the framework, and the overall flow.\u003cbr\u003e It lays a solid foundation that even readers new to GitHub Actions can use without difficulty.\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e \u003cb\u003ePart 2.\u003cbr\u003e Components of GitHub Actions\u003c\/b\u003e\u003cbr\u003e \u003cbr\u003eExpand your knowledge of Actions by learning about the various components needed to set up, share and store data, trigger and control workflow execution in GitHub Actions.\u003cbr\u003e\u003cbr\u003e \u003cb\u003ePart 3.\u003cbr\u003e Security and Monitoring\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e We examine the security required for using GitHub Actions from three perspectives: setup, design, and monitoring.\u003cbr\u003e We'll take a closer look at monitoring itself, explaining the various options used for logging and the techniques used to debug issues.\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e \u003cb\u003ePart 4.\u003cbr\u003e Advanced topics\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e This article covers a variety of topics that you might want to know about when using GitHub Actions, including creating custom actions, creating starter and reusable workflows, using the GitHub CLI and API, and using matrix strategies and containers in your workflows.\u003cbr\u003e Additionally, the final chapter explores how to migrate from other automation tools to GitHub Actions.\u003cbr\u003e\u003cbr\u003e \u003cb\u003eTarget audience\u003c\/b\u003e\u003cbr\u003e \u003cbr\u003e● If you are new to GitHub and want to know how automation works\u003cbr\u003e ● Anyone who wants help implementing the code and syntax that actually makes up a workflow with GitHub Actions\u003cbr\u003e ● Those who want to understand and evaluate the introduction of GitHub Actions for CI\/CD and automation.\u003cbr\u003e ● Those who want to migrate their current CI\/CD solution to GitHub Actions\u003cbr\u003e\u003cbr\u003e \u003cb\u003eWhat you learn\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e ● Writing custom actions using Docker, JavaScript, and shell\u003cbr\u003e ● How to troubleshoot and debug issues that occur in the workflow\u003cbr\u003e ● How to safely implement workflows with GitHub Actions\u003cbr\u003e How to migrate from other CI\/CD platforms to GitHub Actions\u003cbr\u003e\u003cbr\u003e \u003cb\u003eAuthor's Note\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e GitHub Actions are difficult to define or categorize outside of GitHub itself.\u003cbr\u003e It would be more accurate to say that it is a logical extension of the GitHub model. \u003cbr\u003eThis book isn't a guide to the principles of GitHub, but it does try to explain how GitHub Actions work together across the entire GitHub ecosystem in a way that's easy to understand, regardless of your level of automation experience with GitHub.\u003cbr\u003e\u003cbr\u003e Brent Lasseter \u003c\/div\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003cdiv style=\"width:95%;padding-top:20px;padding-bottom:20px\"\u003e\n\n\u003cdiv style=\"text-align:left;font-size:16px;font-weight:bold;padding-bottom:20px\"\u003e GOODS SPECIFICS \u003c\/div\u003e\n\n\u003cdiv style=\"text-align:left;font-size:14px;line-height:1.6em;\"\u003e\n\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e - \u003cstrong\u003eDate of issue:\u003c\/strong\u003e May 20, 2024\u003c\/div\u003e\n\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e - \u003cstrong\u003ePage count, weight, size:\u003c\/strong\u003e 420 pages | 648g | 183*235*15mm\u003c\/div\u003e\n\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e - \u003cstrong\u003eISBN13:\u003c\/strong\u003e 9791169212458\u003c\/div\u003e\n\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e - \u003cstrong\u003eISBN10:\u003c\/strong\u003e 116921245X \u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003ccenter\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003cspan\u003e\u003c\/span\u003e\n\n\u003c\/center\u003e\n\n\n\u003c\/center\u003e","brand":"LIBRAIRIE COREENNE","offers":[{"title":"Default Title","offer_id":43893368913962,"sku":"139602","price":38.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0683\/2750\/5962\/files\/54fd5c84147e07ddc1443a6f188329eb.jpg?v=1765398655","url":"https:\/\/librairie.coreenne.fr\/en\/products\/139602","provider":"LIBRAIRIE COREENNE","version":"1.0","type":"link"}